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.
Following the introduction of auto-deploy to Kubernetes on OpenShift last month, GitLab 8.16 makes auto-deploy available on Google Cloud. Additionally, GitLab 8.16 improves its issue search and filter UI, and includes monitoring tool Prometheus and Slack-alternative Mattermost.
Yahoo! has open sourced Screwdriver, their CD tool used internally in production.
We polled the InfoQ Culture & Methods editors for their takes on what 2017 has in store for the technology industry, what are the trends which we see coming to the fore and what the implications will be for organizations around the globe.
The latest GitLab version, 8.15, provides new CD/CI features aimed to automate deployments on a variety of platforms and to make it easier to reach your staging or production deployments through a command line interface.
At their annual re:Invent conference in Las Vegas, AWS unleashed a flurry of announcements about upcoming cloud services. Amazon outlined over two dozen new capabilities coming to the public cloud, including directly querying data in S3 object storage, building code as part of deployment pipelines, provisioning cheap virtual private servers, and moving data in bulk, ETL-style.
The Cloud, infrastructure as code, federated architectures with APIs, and anti-fragile systems: these are technologies for developing software systems that are rapidly coming into focus, claimed Mary Poppendieck. Systems are moving towards the cloud, and APIs are replacing central shared databases and enable the internet of things. We need to develop anti-fragile systems which embrace failure.
GitLab has released the outcomes of a survey they conducted among software professionals from 362 startups from July 6 through July 27. Main highlights are developers' preference for using latest tools and more collaboration; security is high-priority, but 81 percent admitted to releasing software before it’s ready.
To drive operational maturity you need a microservices architecture, continuous delivery process, DevOps culture and platform automation. Together these four help you to transform your whole organization for achieving cloud-native operability to continuously deliver additional value to your customers.
Continuous delivery should be treated as an agile project as it is about automating your deployment. You have to speed up in small steps and gain trust by doing small deliveries and solve problems fast. The story about how Klaverblad insurance has implemented Agile, DevOps, continuous delivery, and microservices.
At their massive Dreamforce conference, cloud leader Salesforce.com unveiled Salesforce DX: a new model for building and deploying applications to their platform. InfoQ spoke to VP of Product for Salesforce DX, Wade Wegner, for all the details.
At the Agile on the Beach 2016 conference, held in Cornwall, UK, Rebecca Parsons argued that the requirements for improved time-to-market and increased business agility can be achieved by architecting software for real evolvability, keeping systems poised for change, lowering the cost (and risk) of experimentation, maximising visibility and feedback, and aligning the organisation.
Docker in Action, written by Jeff Nickoloff, provides a comprehensive introduction to Docker and how to integrate it into a development workflow. This book is intended for developers and operations engineers who wish to adopt Docker for application development and integrate it into their software delivery process.