Automated acceptance tests are an essential component of a continuous delivery style testing strategy, as they give an important and different insight into the behaviour of our systems. Developers must own the responsibility to keep acceptance tests running and passing, argued Dave Farley; you don't want to have a separate QA team lagging behind a development team.
Jenkins, the popular open source automation server that is used by development teams worldwide for continuous integration and continuous delivery pipelines, has recently announced the general availability of Blue Ocean 1.0.
There is general acceptance that adopting agile development practices enables the speeding up of the delivery of software. Without incorporating quality assurance practices directly into the development process, product quality inevitably suffers. In order to consistently achieve high quality, both work practices and team roles need to change to build quality in rather than testing at the end.
Is it Possible to Test Programmable Infrastructure? Matt Long at QCon London Made the Case for "Yes"
At QCon London, Matt Long, QA Consultant at OpenCredo presented “Testing Programmable Infrastructure with Ruby”. Key takeaways included: it is possible to test programmable infrastructure at the unit, integration, and acceptance level; Ruby provides the power of a full programming language for integration and acceptance tests, and is often understood by both testers and sysadmins;
The main benefit of continuous delivery is lower-risk releases; comprehensive test automation and continuous integration are practices that have the biggest impact on IT performance. Research of continuous delivery and IT performance tells us that implementing continuous delivery practices leads to higher IT performance and high performers achieve both higher tempo and higher levels of stability.
People can feel limited when challenged, which slows them down or keeps them from trying. It can be a real problem, but their fear might actually be in their imagination. Sometimes the only thing that's holding you back is yourself. Survival rules can hinder us- sometimes you have to break them.
Testing techniques like Equivalence Partitioning, Boundary Value Analysis, and Risk-based Testing can help you decide what to test and when to automate a test. InfoQ spoke with Adrian Bolboacă about different types of tests, writing sufficient and good acceptance tests, criteria to decide to automate a test, and how to apply test automation to create executable specifications.
Approval testing is a test technique which compares the current output of your code with an 'approved' version. The approved version is created by initially examining the test output and approving the result. You can revisit the approved version and easily update it when the requirements change. Approval testing is supported by TextTest, an open source tool for text-based functional testing.
Dead code needs to be found and removed; leaving dead code in is an obstacle to programmer understanding and action, and there's the risk that the code is awakened which can cause significant problems. Deleting dead code is not a technical problem; it is a problem of mindset and culture.
LinkedIn’s Bluepill allows developers to run iOS UI tests using multiple simulators on a single machine, writes LinkedIn software engineer Keqiu Hu, and aims to provide tool stability and test scalability.
Try to keep units small, use appropriate tools, and pair-up programmers and tester; these are suggestions for writing good unit tests. Unit testing is a mixture of programming and testing; programmers can work together with testers to learn from each other and broaden their knowledge horizons.
The 2017 State of Testing survey aims to provide insights into how the testing profession develops. The survey is open throughout January 2017.
HashiCorp has released v0.8 of Terraform, an open source tool that enables the building, combining and launching of programmable infrastructure providers such as Amazon Web Services, VMware vSphere, and UltraDNS. Major new functionality includes an interactive console, conditional values, and HashiCorp Vault and Nomad providers.
Between the 14th and 18th November, the three conferences Better Software East, DevOps East and Agile Dev East are taking place simultaneously in the same venue in Orlando, Florida. The conferences are organised around two days of tutorials, two days of talks, and a closing Agile Summit day with keynotes by several international speakers. InfoQ attended the conference to report on its contents.
Netflix made waves when it initially announced Chaos Monkey, a tool that would terminate normally healthy VM instances in production. The goal was to embrace failure and thereby increase resiliency. Rags Srinivas caught up with Lorin Hochstein at Netflix regarding the recent upgrade to Chaos Monkey.