Stop repeating yourself while testing!
Outline/Structure of the Talk
Ten minute talk followed by a walk through of 5 sample projects, about 5 minutes a piece which will be available in github. This projects will show a minimal extra effort required to gain higher levels of code reuse. Followed by 10 minutes QA.
Learning Outcome
An example of how to reuse code cleanly in a test library in a thread safe way.
Make your tests read like this:
@Test public void simpleWebDriverTest() { ApplicationContext context = Context.getContext(); ConcatonatorModel model = context.getBean(ConcatonatorModel.class); Person person = context.getBean(Person.class); assertThat(model.concatonate()).isEqualTo(person.getFirstName() + " " + person.getLastName()); }
Or with minimal extra effort, like this:
Feature: Simple Concatenation Scenario: Standard User Test Given I am A Tester When I enter my data Then my name is stated for the record
Target Audience
Anyone who believes they have room for improvement in code reuse in their test suites.
schedule Submitted 7 years ago
People who liked this proposal, also liked:
-
keyboard_arrow_down
Sarah Thompson - DevOps meets QA - Using Puppet to set up and manage your Selenium Grid
45 Mins
Talk
Intermediate
For testers, setting up and maintaining a Selenium Grid infrastructure can be timely and costly. A lot of the time, we are asked to do this as part of our day to day job when we really want to focus on testing the product!
There are some great cloud based alternatives out there that allow you to easily run your tests on a wide range of Operating Systems and against multiple browser types (at a price).
But what if you already have plenty of devices available within your own company (be it physical machines, virtual machines or cloud based resources) and you want to be able to setup and manage your own grid infrastructure:
- to allow you greater control over the configuration (perhaps you want to have a headless browser like PhantomJS available on your grid)
- to run your tests faster (the cloud based alternatives are a good bit slower for obvious reasons)
- or to simply save money.
-
keyboard_arrow_down
Herman Ching - Using genetic algorithm to do exploratory testing with cucumber and selenium.
45 Mins
Experience Report
Advanced
Writing selenium tests has an inherent problem in which we can only automate what we know the steps for. It is primarily used for regression and can scale very quickly. We generally optimize regression for sprint's relevant features or have smoke tests to get quicker feedback. In addition negative testing is very expensive to write. This entire process is very manual and the maintenance of tests become more costly than the actual writing of tests.
We can change this. By using genetic algorithm and cucumber steps we can create new feature files to discover where in the application may be be problematic. The goal of each individual would be to find the most defect. The two individuals that find the most defects then create children that follows the sequences of how new individuals are form through genetic algorithms. They will breed the next generation of testers which will focus on problematic areas.
Let's find out when and if this strategy can be deemed effectively.