John Frizelle, a Mobile Platform Architect at Red Hat, gave a talk on microservices wherein he provided some great advice about microservices. Most importantly, he provided guidance on when, where, and why (or why not) you should deploy them.
Continue reading “The Truth about Microservices”
The next release of the GNU Compiler Collection, GCC 7, is fast approaching, so in this post, I’m going to talk about work I’ve done to make GCC more reliable
Continue reading “Testing… Testing… GCC”
This post was originally published on redhat.com.
Part 1: Adding Unit Tests to Native iOS Red Hat Mobile Application Platform Application
A robust and agile mobile application development environment requires continuous integration and delivery. It also requires an integrated and automated unit testing process that helps bring applications to market successfully. This two-part series details my work done at the Red Hat Open Innovation Labs and as a Mobile Technical Account Manager to capture these mobile innovations in a useful, repeatable way. In part one of this two-part series, I break down the steps to create and unit test a native iOS application using Red Hat Mobile Application Platform. In part two, I’ll show how Jenkins can be used to automate continuous integration and unit testing of that Mobile app. If you would like to try out our Red Hat Mobile Application Platform product please visit our Red Hat Mobile Application Platform site.
Continue reading “A step-by-step tutorial for continuous integration with Jenkins for a Red Hat Mobile Native iOS application”
Hypothesis is a Python library for creating tests which are simple to write and powerful when run, finding
cases in your code you wouldn’t have thought to look for. It is stable, powerful and easy to add to an existing test suite.
Continue reading The Hypothesis Testing Library for Python: An Introduction
Release validation testing is a process which takes place before the official Fedora release. (Fedora is the upstream, community project from which RHEL is built.) Before the Final (GA) release, we have Alpha and Beta pre-releases and at each of these milestones, nightly builds (nightlies) and composes are released and tested to ensure that the release meets quality standards. Release validation testing is one way you can help Fedora get better, and this post will talk about how you can start off from scratch.
Continue reading “Getting Started with Release Validation Testing in Fedora QA”
Take advantage of your Red Hat Developers membership and download RHEL today at no cost.
Automated testing is one of the hardest, but also the most important thing to get right when doing Continuous Delivery or DevOps. Recently Aslak Knutsen and I hosted a webinar with the title “Continuous Development with Automated Testing”. The webinar had quite a few viewers (and maybe that was one of the reasons that the demo in the webinar didn’t exactly go as planned.)
Continue reading Continuous Development with Automated Testing
Test-Driven-Development (TDD) is an increasingly popular, and practical, development methodology in today’s software industry, and it is easy to apply in Node.js – as we’ll see in this article. TDD forces much greater code test coverage, and if you aren’t already using it, I’d strongly encourage trying.
The process is: define a test that expects the output we want from our library, API, or whatever it is we’re testing to produce; ensure that the test fails – because we have not yet implemented any functionality; then write the implementation code required to make that test pass.
Continue reading “Test-Driven-Development for building APIs in Node.js and Express”
by Jakub Hrozek and Andreas Schneider
Software testing is already a hard business. It gets even harder if you need to test software that is networked, requires custom users on the system or resolve DNS queries.
Consider software such as a file server — it needs to listen for incoming connections on a certain port, often a privileged one in case of well-known protocols. The file server also requires the ability to switch to different user accounts and act on their behalf to create files owned by these users. Finally, a client of this hypothetical file server might want predefined SRV records to be present in DNS for autodiscovery to work properly. All these cases should be tested on every build.
And it gets even harder if your unit tests can’t run as the root user to set up the environment. The use case of testing the full stack, including network, users or DNS with only regular user privileges is exactly what the cwrap.org project is aiming to solve.
Continue reading “Testing your software stack without root privileges using cwrap”
The cmocka project finally released version 1.0. cmocka is a unit testing framework for C with support for mock objects.
In software development, unit testing has become a standard part of many projects. They use tools like cmocka to check some of the functionality of the source code. Unit-testing frameworks allow testing of low level functionality and ensure that all software components are working correctly and often prevent regression if you do code changes.
Continue reading “cmocka 1.0”