Software Testing Training Courses

Software Testing Training

Testing requires 30% - 50% of project time and resources, but - in spite of the significant increase of test awareness during the last 20 years - it is still not appreciated sufficiently. If testing takes 30-50% of project budget, why do companies normally spend less than 5% of their training budget on test courses? The answer is, many people believe that testing can somehow be done without specialist skills, just using your common sense, while for example programming in Python requires at least minimum professional knowledge. This is to some extent true, but it is worth remembering that test productivity and efficiency can be raised dramatically, using specialist knowledge and skills, which are provided by our training courses.

Client Testimonials

Performance Testing with LoadRunner

Laila was really friendly and made sure everyone on the course felt comfortable with what they were doing.

Philip Herbert - Accenture (UK) Limited

Certified Agile Tester

• The creative training games.
• The practical exercises that gave us the chance to practice and understand core principles.
• The trainer was professional and passionate.

Roaa Rasheed

Software Engineering

the engaging method of teaching ensured that all attending the course were involved in the learning process

Matthew Cuff - Altran UK

Software Engineering

Covered a wide range of topics - more than I would have expected in a Software Engineering lecture (such as some details on programming, safety critical systems etc.). Kristian was very friendly and easy to ask questions to. I thoroughly enjoyed the course and would recommend it to others.

Jerome Shah - Altran UK

Test Automation with Selenium

Small group, 1 on 1 attention. Felt comfortable asking questions.

Jaeanne St. Pierre - CVS Health

Selenium WebDriver Overview

The detail and examples shown

Timothy Walton - ADNEOM

JMeter Fundamentals and JMeter Advanced

It made me lose my fear to JMeter as a substitute of HP Performance Center

Juan Castillo - Thomson Reuters (Markets) Europe SA Spolka Akcyjna Oddzial w Polsce

JMeter Fundamentals and JMeter Advanced

Super content, great teaching attitude, amazignly fast & accurate knowledge sharing.

Jakub Dering - Thomson Reuters (Markets) Europe SA Spolka Akcyjna Oddzial w Polsce

Selenium for Victims of Manual Testing

Kristian was a very good trainer. He adjusted his training to our levels and explained very clearly and structured. The training was very interesting and well organized. I liked the teaching style.

Annett Edom - AutoScout24 GmbH

Test Automation with Selenium

Spójne ujęcie tematu szkolenia przez prowadzącego, świetne połączenie teorii i dobrych praktyk.

Dariusz Moskała - Izba Celna w Toruniu

Selenium for Victims of Manual Testing

Demo and walk through using TestNG

Dominic Hung Hung - Statistics Canada

Contemporary Development Principles and Practices

Very informative and gave a nice overall summary of the course outline

Matthew Steptoe - Reed Professional Services LLP

Introduction to Selenium

I thought the pacing was perfect. Good amount of interaction considering it was done over the computer. Lots of interaction available by connecting to a virtual machine and following along. Thought the project we completed had very clean code and gave me a good idea of how something like this should be compiled. Will be able to apply what I learned to the workplace.

Chris Dingwell - STI Technologies

Test Automation with Selenium

Working through exercises

Paul Connolly - BarracudaFX

BDD - Behavioral testing of IT systems

One-to-one session which gave me the option to focus on the area most revelant to my need.

Alex Liu - The Hong Kong Jockey Club

Selenium WebDriver Overview

I learned a lot, Pallavi has shown her knowledge and excellence with Web Driver. She also checks and see our work, and gives input on how to solve our activities.

Jon Edward Singson - Indra Philippines, Inc.

Web Application Performance Testing with JMeter

I found the trainer made the course very interesting

Cameron Taylor - Amino Communications Ltd

Test Automation with Selenium

The fact that trainer was doing the exercises with us and he was remusing the most important stuff while doing the exrecises

Ana Patricio - Computer Resources International (Belgium) SPRL

Test Automation with Selenium

OK

Jacky Perazio - Computer Resources International (Belgium) SPRL

Jenkins: Continuous integration for Agile development

All of it. Having had no previous exposure to Jenkins, I was a little concerned about my ability to keep up. Iyad provided appropriate coaching/support, when I asked for help, so that I was able to follow the presentation at a level I was happy with.

Graham Congdon - New Zealand Customs

Jenkins: Continuous integration for Agile development

Real-world developer experience

Ian Cranston - Compuware Software Group Pty. Ltd.

Test Automation with Selenium and Jenkins

Luke was very knowledgable, patient, and very open to satisfy my curiosity, for example I asked him to generate errors to see how system will response, and etc. He would go above and beyond to answer questions or demonstrate the functionalities, even some of my questions were out of the class scope. He gave me a real experience with the system. I definitely will take another class with him and recommend him as a teacher for others. Thank you Luke!

Tina Henderson

Subcategories

Software Testing Course Outlines

Code Name Duration Overview
SeleniumJenkins Test Automation with Selenium and Jenkins 21 hours This course provides training for handling testing projects using Selenium test suite and continuous testing with Jenkins. Intended Audience: Software test engineers Software developers involved in agile development Release managers QA engineers At the end of Selenium training the delegates will be able to: Use Selenium test suite effectively in real projects Use Selenium for cross browser testing Distribute the tests using Selenium Grid Run regression Selenium tests in Jenkins Prepare test reports and periodict reports using Jenkins Understanding the Structure of Web Pages and Applications (10%) Understanding locators (major focus on XPath, sub-focus on mane ID and CSS) How to break a web page down into testable parts Testing concepts and strategy Continous Integration and Testing with Jenkins Selenium IDE (10%) IDE features Building test cases Creating test suites Executing tests Selenium commands Troubleshooting Best practices, TIPs Testing AJAX applications Verify page elements Selenium WebDriver (50%) Installation and configuration Running test suites against various browsers Cross browser testing Debugging Selenium Grid Configuration Distributed testing Creating batch files Cross browser testing Jenkins Setting up Jenkins Configuring Selenium Plugins Running automated tests Reporting Notifications Deployment
jenkins Jenkins: Continuous integration for Agile development 14 hours Jenkins is an open-source continuous integration tool written in Java. It is a server-based system that runs in a servlet container such as Apache Tomcat. Jenkins supports a number of Software Configuration Management (SCM) tools, including CVS, Subversion, Git, Perforce, and Clearcase, among others. It is highly scriptable and provides support for Apache Ant, Apache Maven, shell scripts, and Windows batch commands. This course covers the concepts, tools and techniques needed to carry out continuous integration of your software projects in an Agile environment. Participants carry out a series of hands-on exercises throughout the course to apply their knowledge in real situations. Interaction among instructor and participants is encouraged. Real-world cases are discussed and specific issues and questions are addressed and resolved in class. Audience Build engineers Software developers involved in agile development QA engineers Project managers Release managers Format of the course     Part lecture, part discussion, heavy hands-on practice   Introduction to Jenkins     Why continuous integration?     Distributing builds across different systems. Setting up Jenkins Installing Jenkins plugins Building with Jenkins Testing with Jenkins Deploying with Jenkins Automating with Jenkins Securing Jenkins Best practices for Jenkins Reporting in Jenkins Closing remarks
appium Mobile Automation with Appium Overview 7 hours Audience: Anyone involved in testing including Mobile Automation Testers Appium Overview Purpose of Appium Client & Server of Appium Overview Appium Setup Configuration with Eclipse Setting up Helper Files Setting up Templates Appium  Test Scripts Setting Up Test Scripts in Eclipse Locating Web/Native Elements Conversion of Verification Statements Creating Custom Log Files Creating Test Reports Test Script Enhancement Useful WebElement/Native Element Methods Target Object Map Creation Test Modularization
seleniumCsharp Selenium WebDriver in C#: Introduction to web testing automation in C# 14 hours This course introduces participants to automated testing with Selenium WebDriver and C# in Visual Studio. If you do not have C# programming experience or wish to brush up on C#, please check out the course: C# for Automation Test Engineers. Audience     Developers and testers with knowledge of C# who wish to set up automating testing with Selenium Format of the course     Part lecture, part discussion, heavy hands-on practice, occasional tests to gauge understanding Introduction     Selenium Automated Web Application Testing     C# and .NET About Selenium WebDriver     Tools     Unit testing Frameworks     Supported Browsers Installing and configuring WebDriver with C#, .NET and VisualStudio     Using NuGet     Libraries and extensions     Organizing your file structure Writing a Nunit Test     Import statements     Invoking the browser     Writing to the console Identifying UI Elements     Chrome Developer Tools and other extensions     Regular expressions     Index     Xpath functions Performing user actions in WebDriver     Performing mouse and keyboard operations     Edit boxes, combo boxes, buttons, links, checkboxes and radio buttons Capturing and validating data from web page     Asserts and execution flow Other operations     Mouse events     Screenshots     Executing Javascript Frames, alerts and multiple browser windows Using C#'s built-in functions     Strings     Date and time     Files and folders     Math operations Exception handling     C# .Net     Webdriver Synchronization     Implicit vs Explicit waits     Fluent waits Working with Page Objects (POM)     Refactoring     Developing a library of pages (POMs) Testing Structure     Nunit Fixtures, Nunit Traits and Categories, Playlists Helper Libraries Data-Driven Testing Selenium IDE and Selenium Grid Integration The future of automation testing
selvictest Selenium for Victims of Manual Testing 14 hours This is a practical course designed for manual testers in order to facilitate automated testing. It will emphasis smooth transition from recording scripts in Selenium IDE to basic scripting using Javascript (or in case of a private course, language of choice). Introduction to testing and automated testing Types of tests Designing tests and managing tests with Agile What Selenium is good at and what it is not Recording functional and regression tests in Selenium IDE Recording and running scripts Running test suite Making adjustments to recorded scripts Using CSS and XPath for finding elements Introduction to WebDriver Exporting scripts from Selenium IDE API overview Running scripts from the command line Cross-browser testing Most useful language patterns used in testing scripts Introduction to Page Object Model Maintaining and improving scripts Organize script structure Running scripts periodically Overview of Continuous Integration and the Selenium tests
tosca Tosca: Model-based testing for complex systems 35 hours In this instructor-led training training participants will learn how to use Tosca to carry out end-to-end (web + backend) testing. The training combines theory with practice in a live lab environment, giving participants the chance to interact with the technology, the instructor and their peers. The training starts with an overview of traditional code and script based automation testing and contrasts it with Tosca's model-based approach. Participants learn how to create and execute test cases using Tosca's default modules as well as how to custom build their own modules for execution. From software modeling principals to test coverage across different browsers, this training walks participants through both theory and practice and enables them to implement their own testing solution in Tosca. Audience     Automation test engineers Format of the course     Part lecture, part discussion, heavy hands-on practice INTRODUCTION AND OVERVIEW What is model-based testing? The Tricentis Tosca Testsuite GUI testing, API testing, Mobile testing, Service virtualization, Test data design and generation, Business intelligence testing, and Exploratory testing Installing Tosca License server, database and desktop application A brief tour of the Tosca workspace Customizing the Tosca workspace Overview of the Tosca test process Manual, semi-automated, and fully automated testing Achieving high automation rates Overview of Tosca components TestCases, ExecutionLists, Modules, Requirements, TestCaseDesign OPTIMIZING RISK COVERAGE THROUGH REQUIREMENTS Risk management vs conventional test coverage Risk assessment Risk classification PLANNING AND IMPLEMENTING AN END-TO-END TESTING PROJECT Building the application model Defining system states and conditions from a business perspective Working with test case templates Scanning the application Generating test cases Test data management Design Generation Provisioning Management WEB APPLICATION TESTING WITH TOSCA Implementing a web UI automation testing project HTML control recognition Building automated test cases Creating modules Communication with the database Working with database tables Executing test cases Reporting test execution results Testing different browsers REUSE AND CUSTOMIZATION Using and re-using test cases Extending Tosca with customized adapters INTEGRATING TOSCA WITH OTHER TOOLS Continuous integration Automation test suites CLOSING REMARKS
galen Galen Framework: Layout and functional test automation for your responsive website 14 hours Galen is an open-source web application testing framework for layout and functional testing. It uses Selenium to obtain the location and dimension of page elements, catch any misbehaving elements, then report them with a screenshot.  Galen supports both JavaScript and Java tests and is especially useful for layout testing of responsive websites. This course introduces participants to the Galen Framework and walks them through the setup and execution of various types of layout and functional tests. Audience     Developers and test engineers Format of the course     Part lecture, part discussion, heavy hands-on practice, occasional tests to gauge understanding Introduction to Galen Framework     Beyond WebDriver and Selenium Grid Galen Installation and IDE setup     Linux, OS X and Windows Using Galen Framework with Selenium     Avoiding overlapping tests     Selenium Grid and cloud services Using javascript with the Galen Framework     GalenJs Working with the Galen language: Galen Specs     Syntax and rules to describe your layout Testing the layout of responsive websites with Galen Cross-browser testing with Galen Framework Testing the colors on your website with Galen Internationalization testing with Galen Galen reports     Html Reports     TestNG Reports - embedding Galen into Jenkins The Java API Java + Maven + TestNG + Galen how to use Galen inside Java tests Closing remarks
agilesofttestci Agile Software Testing with Continuous Integration 28 hours QA/CI What is QA? What is CI The costs of software development, refactoring and fix errors Identifying and understanding the project Profit for the organization DDD Software development based on business requirements, assumptions DDD Problems in communication IT-Business Domain Model Best Practices KISS principle and DRY Coding standards Creating reusable code through OOP and design patterns Identifying and reducing cyclomatic complexity Software Metrics Weight Method per Class Response For a Class Depth of Inheritance Tree Coupling Between Objects Lack of Cohesion of Methods Number of Children Cyclomatic complexity Metrics class Model Metrics Metrics for use Software Testing What, when and how to test? The method of "white-box" and "black box" The role of testing in agile methodologies TDD only a potential increase in the cost of the project Unit testing Behavioral tests Functional tests Refactoring What is refactoring? Debt technology Code smell Refactoring patterns Documentation The role of documentation in agile methodologies What to document? Types of documentation Documentation and agile methodologies, or you can call (Working software over comprehensive documentation)? Standard XMI Automatic generation of documentation Tools and Environment CI Tools and Environment CI Agile and CI/QA Planning and incremental development Embracing Change Short stages Interdisciplinary team Extreme Programming, Code Review Individuals and interactions over processes and tools Summation Discussion Questions How do you begin the process of implementation? Introduction to testing Functional Tests Regression Test UAT Tests Unit Tests Usability Tests Non Functional Tests Performance test Load test Stress test Soak test Test or not to test Who is making decisions about what to test? The cost of testing irrelevant things Calculating ROI (what if something fails analysis) The role of Test Manager The process of Testing Testing is a process and a strategy Identifying testing needs Gathering requirements (use cases, user stories) Scoping (choosing and prioritize scenarios) Designing tests Preparing data Preparing environment Creating or Recording tests Perform the test Analysis and reports Conclusions and improvement When to say "stop" Product owner and Tests The customer representative and test priority Prioritizing tests Writing effective stories for UAT Acceptance criteria Group exercise to produce customer requirements and write stories based on the requirements and create tests
agiletesting Introduction to Agile Testing 14 hours Overview This 2-day course provides a brief introduction to Agile software testing. It deals with foundational test concepts, within the context of Agile (Scrum) development and uses Crispin & Gregory’s (More Agile Testing, 2014) Agile Testing Quadrants model as a framework to explore contemporary principles and practices of Agile testing. Intended Audience This course is intended for development teams who want to improve their testing practices in an Agile context. It is also suitable for those intending to pursue testing as a specific career and is a suitable pre-requisite for the iSQI Certified Agile Tester course. Day One Overview of Agile Overview history of Agile methodologies Discussion on Agile Manifesto statements Scrum Framework Scrum roles and responsibilities – Scrum Master, Product Owner, Dev Team Scrum events – Sprint, Sprint Planning, Review, Retrospective, Scrum meeting Scrum artefacts – Product Backlog, Sprint Backlog, Product Increment Agile Testing Distinctives Collaboration over independence The place of documentation in Agile Introduction to Agile Testing Quadrants Test automation Testing Fundamentals The Fundamental Test Process Black-box test design techniques White-box test design techniques Day Two Technology-facing testing that guides development Unit testing and black-box test design Test-driven development Test tools example Business-facing testing that guides development User stories and acceptance testing Behavior-driven development Test tools example Business-facing testing that critiques the product Exploratory testing White-box test design Testing Fundamentals Quality attributes Performance testing Test tools example
Csharpfortesters C# for Automation Test Engineers 21 hours This course is designed for anyone interested in learning C# for the purpose of automation testing. It is a streamlined, intensive course with plenty of hands-on exercises to get participants ramped up quickly with the essential programming skills needed to apply in software automation testing. The focus is on the C# fundamentals which can be directly and immediately applied to test automation. This course does not cover in depth test automation frameworks such as Selenium. If you are already versed in C# and wish to get straight into testing with Selenium, please check out: Selenium WebDriver in C#: Introduction to web testing automation in C#. Audience     This course is intended for beginner testers who wish to learn C# for automation testing as well as for professional testers with experience in other programming language such as Java or Javascript who wish to transfer their testing skill set to C#. Format of the course     Part lecture, part discussion, heavy hands-on practice, occasional tests to gauge understanding Project setup     .Net and VisualStudio setup C# data types and operators     Variable types     Operators     Conditional statements     Loop Statements     Lists     Switches     Arrays Object-oriented programming     Class creation     Constructors     Constructor overloading     Namespaces and using statements Methods     Method creation     Method reuse     Method overloading     Passing arguments Containers     ArrayLists     Vectors     HashTables     Generics Extending classes     Construction of classes     Inheritance     Polymorphism     Abstract classes     Interface classes Working with strings     Manipulation     Formatting     Tokenizers Unit tests     Web testing     Creation     Assertions Debugging     The Watch Window     Debug Commands     Debugging Functions Exception Handling     Catch Block     Finally Block     Throw Keyword     Try Catch Block Working with JSON     Structure     JSON libraries     Creating JSON strings     Deserializing Towards an Automation Framework Closing remarks
cucumber Cucumber: Implementing Behavior Driven Development (BDD) with Cucumber 14 hours Behaviour-Driven Development (BDD) is an Agile methodolgy aimed at improving the communication and collaboration among Software Developers, Quality Assurance / Testers, Business Analysts, and other parties involved in a project. Cucumber is an open-source “story-based” framework written in Ruby. It enables Behavior Driven Development (BDD) by allowing for the creation of tests that are understandable by technical as well as non-technical people such as business stakeholders.   This course walks participants through real-life cases for Behavior Driven Development (BDD) and demonstrates hands-on how to implement Cucumber in various test scenarios. Audience     Testers and Developers Format of the course     The course includes a discussion of Behavior Driven Development (BDD) and how Cucumber can be used to carry out BDD testing in various contexts such as web application testing. Participants will be walked through the writing of their own user stories, test cases and executable test code. Introduction Installing and configuring Cucumber Business Driven Development (BDD) and Acceptance test–driven development (ATDD) Involving the business analysts in your organization Defining your project requirements The testing ecosystem (IDEs, programming languages, testing frameworks and build libraries) Setting up a web application testing system Gherkin: writing your stories in a user-friendly language Writing features Writing scenarios Writing step definitions Organizing features and scenarios with tagging Working with hooks Working with databases An overview of the Ruby ecosystem Web-based test automation with Capybara Refactoring Cucumber Using Cucumber with Selenium Generating reports Emerging trends Conclusion
owasp Web Security with the OWASP testing framework 28 hours The Open Web Application Security Project is an online community which creates freely-available articles, methodologies, documentation, tools, and technologies in the field of web application security. OWASP offers testing frameworks and tools for identifying vulnerabilities in web applications and services Audience This course is directed at Developers, Engineers and Architects seeking to secure their web apps and services Web Security overview Top 10 2013 Mobile Top 10 2016 2016 Top 10 Proactive Controls OWASP Testing Introduction The OWASP Testing Project Principles of Testing Testing Techniques Explained Deriving Security Test Requirements Security Tests Integrated in Development and Testing Workflows Security Test Data Analysis and Reporting The OWASP Testing Framework Overview Phase 1: Before Development Begins Phase 2: During Definition and Design Phase 3: During Development Phase 4: During Deployment Phase 5: Maintenance and Operations A Typical SDLC Testing Workflow Web Application Security Testing Introduction and Objectives Testing Checklist Information Gathering Conduct Search Engine Discovery and Reconnaissance for Information Leakage (OTG-INFO-001) Fingerprint Web Server (OTG-INFO-002) Review Webserver Metafiles for Information Leakage (OTG-INFO-003) Enumerate Applications on Webserver (OTG-INFO-004) Review Webpage Comments and Metadata for Information Leakage (OTG-INFO-005) Identify application entry points (OTG-INFO-006) Map execution paths through application (OTG-INFO-007) Fingerprint Web Application Framework (OTG-INFO-008) Fingerprint Web Application (OTG-INFO-009) Map Application Architecture (OTG-INFO-010) Configuration and Deployment Management Testing Test Network/Infrastructure Configuration (OTG-CONFIG-001) Test Application Platform Configuration (OTG-CONFIG-002) Test File Extensions Handling for Sensitive Information (OTG-CONFIG-003) Review Old, Backup and Unreferenced Files for Sensitive Information (OTG-CONFIG-004) Enumerate Infrastructure and Application Admin Interfaces (OTG-CONFIG-005) Test HTTP Methods (OTG-CONFIG-006) Test HTTP Strict Transport Security (OTG-CONFIG-007) Test RIA cross domain policy (OTG-CONFIG-008) Identity Management Testing Test Role Definitions (OTG-IDENT-001) Test User Registration Process (OTG-IDENT-002 Test Account Provisioning Process (OTG-IDENT-003) Testing for Account Enumeration and Guessable User Account (OTG-IDENT-004) Testing for Weak or unenforced username policy (OTG-IDENT-005) Authentication Testing Testing for Credentials Transported over an Encrypted Channel (OTG-AUTHN-001) Testing for default credentials (OTG-AUTHN-002) Testing for Weak lock out mechanism (OTG-AUTHN-003) Testing for bypassing authentication schema (OTG-AUTHN-004) Test remember password functionality (OTG-AUTHN-005) Testing for Browser cache weakness (OTG-AUTHN-006) Testing for Weak password policy (OTG-AUTHN-007) Testing for Weak security question/answer (OTG-AUTHN-008) Testing for weak password change or reset functionalities (OTG-AUTHN-009) Testing for Weaker authentication in alternative channel (OTG-AUTHN-010) Authorization Testing Testing Directory traversal/file include (OTG-AUTHZ-001) Testing for bypassing authorization schema (OTG-AUTHZ-002) Testing for Privilege Escalation (OTG-AUTHZ-003) Testing for Insecure Direct Object References (OTG-AUTHZ-004) Session Management Testing Testing for Bypassing Session Management Schema (OTG-SESS-001) Testing for Cookies attributes (OTG-SESS-002) Testing for Session Fixation (OTG-SESS-003) Testing for Exposed Session Variables (OTG-SESS-004) Testing for Cross Site Request Forgery (CSRF) (OTG-SESS-005) Testing for logout functionality (OTG-SESS-006) Test Session Timeout (OTG-SESS-007) Testing for Session puzzling (OTG-SESS-008) Input Validation Testing Testing for Reflected Cross Site Scripting (OTG-INPVAL-001) Testing for Stored Cross Site Scripting (OTG-INPVAL-002) Testing for HTTP Verb Tampering (OTG-INPVAL-003) Testing for HTTP Parameter pollution (OTG-INPVAL-004) Testing for SQL Injection (OTG-INPVAL-005) Testing for LDAP Injection (OTG-INPVAL-006) Testing for ORM Injection (OTG-INPVAL-007) Testing for XML Injection (OTG-INPVAL-008) Testing for SSI Injection (OTG-INPVAL-009) Testing for XPath Injection (OTG-INPVAL-010) IMAP/SMTP Injection (OTG-INPVAL-011) Testing for Code Injection (OTG-INPVAL-012) Testing for Local File Inclusion Testing for Remote File Inclusion Testing for Command Injection (OTG-INPVAL-013) Testing for Buffer overflow (OTG-INPVAL-014) Testing for Heap overflow Testing for Stack overflow Testing for Format string Testing for incubated vulnerabilities (OTG-INPVAL-015) Testing for HTTP Splitting/Smuggling (OTG-INPVAL-016 Testing for Error Handling Analysis of Error Codes (OTG-ERR-001) Analysis of Stack Traces (OTG-ERR-002) Testing for weak Cryptography Testing for Weak SSL/TLS Ciphers, Insufficient Transport Layer Protection (OTG-CRYPST-001) Testing for Padding Oracle (OTG-CRYPST-002) Testing for Sensitive information sent via unencrypted channels (OTG-CRYPST-003) Business Logic Testing Test Business Logic Data Validation (OTG-BUSLOGIC-001) Test Ability to Forge Requests (OTG-BUSLOGIC-002) Test Integrity Checks (OTG-BUSLOGIC-003) Test for Process Timing (OTG-BUSLOGIC-004) Test Number of Times a Function Can be Used Limits (OTG-BUSLOGIC-005) Testing for the Circumvention of Work Flows (OTG-BUSLOGIC-006) Test Defenses Against Application Mis-use (OTG-BUSLOGIC-007) Test Upload of Unexpected File Types (OTG-BUSLOGIC-008) Test Upload of Malicious Files (OTG-BUSLOGIC-009) Client side Testing Testing for DOM based Cross Site Scripting (OTG-CLIENT-001) Testing for JavaScript Execution (OTG-CLIENT-002) Testing for HTML Injection (OTG-CLIENT-003) Testing for Client Side URL Redirect (OTG-CLIENT-004) Testing for CSS Injection (OTG-CLIENT-005) Testing for Client Side Resource Manipulation (OTG-CLIENT-006) Test Cross Origin Resource Sharing (OTG-CLIENT-007) Testing for Cross Site Flashing (OTG-CLIENT-008) Testing for Clickjacking (OTG-CLIENT-009) Testing WebSockets (OTG-CLIENT-010) Test Web Messaging (OTG-CLIENT-011) Test Local Storage (OTG-CLIENT-012) Report Executive Summary Test Parameters Findings
selendroid Selendroid: Automated testing for Android 7 hours Selendroid is an open-source test automation framework for Android devices. It can be used to test native applications, hybrid applications and mobile websites running on real devices as well as emulators. Based on the Selenium Webdriver client API, it supports full integration with existing Selenium frameworks. Selendroid supports hot plugging of hardware devices and can be integrated as a node in Selenium Grid for large-scale parallel testing. It is compatible with the JSON Wire Protocol. This training introduces the Selenium framework and walks participants through the setup, configuration and execution of automation tests in a live hands-on test environment. After the course, participants will have the knowledge and practice to carry out their own automated testing initiatives for Android devices. Audience     Test engineers Format of the course     Interactive discussion + heavy hands-on practice Introduction     Native-mobile, hybrid mobile and web app test automation     Selendroid vs Appium Overview of the Selendroid architecture components     Selendroid Client, Selendroid Server, AndroidDriver App, Selendroid-Standalone Setting up a Selendroid testing environment Choosing between hardware and emulator testing Running Selendroid-Standalone to manage test devices Running Selendroid Server for app automation testing Writing your first test Executing your first test Interacting with elements Using the XML viewer Using Selendroid Inspector to simplify test case development Integrating with Selenium Grid for parallel testing Testing gestures using the Advanced User Interactions API A note about multi-touch support Writing tests with other WebDriver-compatible languages (JavaScript, Python, etc.) Closing remarks
seleniumpython Selenium with Python for test automation 14 hours Selenium is an open source library for automating web application testing across multiple browsers. Selenium interacts with a browser as people do: by clicking links, filling out forms and validating text. It is the most popular tool for web application test automation. Selenium is built on the WebDriver framework and has excellent bindings for numerous scripting languages, including Python. In this training participants combine the power of Python with Selenium to automate the testing of a sample web application. By combining theory with practice in a live lab environment, participants will gain the knowledge and practice needed to automate their own web testing projects using Python and Selenium. Audience      Testers and Developers Format of the course     Part lecture, part discussion, heavy hands-on practice Introduction to Selenium with Python     Python vs Java for writing test scripts Installation and setup Selecting a Python IDE or editor Overview of Selenium architecture     Selenium IDE     Selenium WebDriver     Selenium Grid Python scripting essentials for test automation Working with Selenium Webdriver The anatomy of a web application Locating page elements through Page Objects Creating a unit test Accessing a database Developing a test framework Running test suites against multiple browsers Working with SeleniumGrid Troubleshooting Closing remarks
testng Testing with TestNG 14 hours TestNG is a testing framework designed to simplify a broad range of testing needs, from unit testing (testing a class in isolation of the others) to integration testing (testing entire systems made of several classes, several packages and even several external frameworks, such as application servers). Audience This course is crafted for engineers and developers seeking to adopt the TestNG suite in their workflow. Getting Started Annotations testng.xml Running TestNG Test methods, Test classes and Test groups Test methods Test groups Groups of groups Exclusion groups Partial groups Parameters Dependencies Factories Class level annotations Parallelism and time-outs Rerunning failed tests JUnit tests Running TestNG programmatically BeanShell and advanced group selection Annotation Transformers Method Interceptors TestNG Listeners Dependency injection Listening to method invocations Overriding test methods Altering suites (or) tests Test results Success, failure and assert Logging and results YAML
jmeterwebapp Web Application Performance Testing with JMeter 7 hours This course has been created for test managers, testers, business analysts, designers, developers, administrators and anyone interested in planning and performing web application performance tests. It covers how to set up a non-functional requirements, which indicators are most important in specific implementations, how to create a performance test plan, implement it in JMeter, execute it and analyse the results. Performance Testing Fundamentals Stress testing Load testing Soak testing Running multiple threads Setting rump-up period Threads and users Distributed Testing Configuring servers Gathering results Submitting Forms Extracting form ID or checksums Generating sequence or random data Getting data from database Recording forms with a JMeter proxy server Submitting data recorded in log files Managing Sessions Session managers Session per thread Session per user Load Distribution Using Apache log files to determine distribution Analysing distribution and creating appropriate test plans Timers Gaussian Random Timer Other Resources and Load Time Images Java scripts JMeter and HTTP headers policy (browser and proxy caching) Resource Monitoring Monitoring and analysing CPU resources Monitoring database queries Monitoring memory utilization Monitoring network traffic Running monitoring tools periodically Analysing and Interpreting Load Test Results Running tests at night and creating periodical reports Statistics available from JMeter Sample, Average, Median, Deviation, Throughput Response time graphs Margins of Error Analysing results with Excel Interpreting statistical results Finding the bottlenecks Regression and correlations
behave Behave: BDD with Python (Cucumber/Gherkin for Python) 7 hours Behave is an open-source, Python-based BDD framework for writing tests in a natural language style. BDD, or Behavior Driven Development, is an agile software development technique that encourages collaboration among developers, QA and non-technical business people in a software project. This training begins with a discussion of BDD and how the Behave framework can be used to carry out BDD testing for web applications. Participants are given ample opportunity to interact with the instructor and peers while implementing the concepts and tactics learned in this hands-on, practice-based lab environment. By the end of this training, participants will have a firm understanding of BDD and Behave, as well as the necessary practice to implement these techniques and tools in real-world test scenarios. Audience      Testers and Developers Format of the course      Heavy emphasis on hands-on practice. Most of the concepts are learned through samples, exercises and hands-on development. Introduction     Business Driven Development (BDD) and Acceptance Test Driven Development (ATDD)     BDD as a collaboration tool for software engineers, test engineers and business people Defining your project requirements Setting up your environment for web application testing Gherkin: writing your stories in a user-friendly language The anatomy of the Feature file Writing your first feature Writing scenarios for your feature Writing step definitions Passing parameters to Steps Creating scenario outlines to pass multiple arguments Sharing data between steps Organizing features and scenarios with tags Setup and teardown Closing remarks
seleniumruby Selenium with Ruby for test automation 14 hours Selenium is an open source library for automating web application testing across multiple browsers. Selenium interacts with a browser as people do: by clicking links, filling out forms and validating text. It is the most popular tool for web application test automation. Selenium is built on the WebDriver framework and has excellent bindings for numerous scripting languages, including Ruby. In this training participants combine the power of Ruby with Selenium to automate the testing of a sample web application. By learning to create and combine Ruby test scripts with Selenium web automation in a live lab environment, participants will gain the knowledge and practice needed to automate the testing of their own real life web applications and websites. Audience      Testers and Developers Format of the course     Part lecture, part discussion, heavy hands-on practice Introduction to Selenium with Ruby     Ruby vs Java for writing test scripts Installation and setup Selecting a Ruby IDE or editor Overview of Selenium architecture     Selenium IDE     Selenium WebDriver     Selenium Grid Ruby scripting essentials for test automation Working with Selenium Webdriver The anatomy of a web application Locating page elements through Page Objects Creating a unit test Accessing a database Developing a test framework Running test suites against multiple browsers Working with Selenium Grid Troubleshooting Closing remarks
angulartesting Angular: Testing your Angular applications 14 hours In this instructor-led, live training, participants will learn how to write and maintain tests for Angular applications. By the end of this training, participants will be able to Decide the most appropriate strategy for testing an Angular application Carry out unit testing, component testing, A/B testing and end-to-end on an Angular application Choose the right tools for the job: Jasmine, Karma, Protractor, Mocha, etc. Write tests in Protractor and Jasmine Run and debug tests with Karma and Protractor Create a maintainable test suite Employ best practices for unit testing in Angular Audience Testers Developers Format of the course Part lecture, part discussion, exercises and heavy hands-on practice Note Angular goes by different names and versions, namely: Angular.js, AngularJS, AngularJS 1, Angular 1, Angular 2, etc. To customize the version used in this training, please contact us to arrange. To request a customized course outline for this training, please contact us.
TesAutSel Test Automation with Selenium 21 hours This course provides training for handling testing projects and provides hands on experience with web applications, functional test automation and cross browser test automation using Selenium test suite. Intended Audience: Software test engineers Software developers involved in agile development At the end of Selenium training the delegates will be able to: Use Selenium test suite effectively in real projects Use Selenium for cross browser testing Distribute the tests using Selenium Grid Understanding the Structure of Web Pages and Applications (25%) Understanding locators (major focus on XPath, sub-focus on mane ID and CSS) How to break a web page down into testable parts Testing concepts and strategy Selenium IDE (25%) IDE features Building test cases Creating test suites Executing tests Selenium commands Troubleshooting Best practices, TIPs Testing AJAX applications Verify page elements Selenium WebDriver (50%) Installation and configuration Running test suites against various browsers Cross browser testing Debugging Selenium Grid Configuration Distributed testing Creating batch files Cross browser testing
Watir Watir: Web test automation with Ruby 21 hours Watir (Web Application Testing in Ruby) is an open source library for automating tests. Watir interacts with a browser the same way people do: clicking links, filling out forms and validating text. Based on the WebDriver framework, it is comparable to Selenium and is one of the most popular tools for web application test automation. In this training participants will learn how to use Watir to automate their web application testing by combining theory with practice in a live lab environment. By the end of the course, participants will have the knowledge and practice to utilize the full power of Watir and Ruby to automate their web testing projects. Audience     Automation test engineers Format of the course     An instructor-led course with theoretical coverage of Watir and Ruby together with exercises and a large component of hands-on practice. Introduction to Watir and Ruby Installation and setup Overview of Watir architecture Ruby scripting for test automation Working with Webdrivers Working with Page Objects Locating page elements Creating a unit test Using Watir methods and classes Accessing a database Developing a test framework Troubleshooting Closing remarks
jmeterfunadv JMeter Fundamentals and JMeter Advanced 14 hours This is back-to-back JMeter Fundamentals and JMeter Advanced courses offered together for convenience. JMeter Fundamentals This course covers the creation and implementation of functional and unit testing with Apache JMeter, the free application testing software from The Apache Software Foundation. The purpose of the course is to allow organizations to completely automate their various testing requirements, saving time, money, and helping to minimize the risk of human error in testing. The program explores the concepts of designing and creating test plans for real-world web applications using Apache JMeter, including functional, regression and stress testing plans. Participants will learn how to design test plans for a variety of purposes and to use the various components and functions within JMeter to their advantage, permitting them to completely automate the web application testing process. JMeter Advanced This course deals with advanced web application testing techniques. It focuses on full automation, scripting, integrating tests with external data source. JMeter Fundamentals: Introduction Why use JMeter? Overview of functional/regression/stress testing principles Designing a basic test plan How to identify your testing needs Defining the steps of your test Creating your first JMeter test Introducing the JMeter GUI The basic elements of a JMeter test plan Building a functional test with your Internet browser Executing your functional test Reading the results of your test The power of JMeter Comprehensive overview of the available JMeter components and functions Implementing an advanced functional test using the key JMeter functions and components Regression testing Using your functional tests for regression testing Future proofing your tests Stress testing Identifying what you need to test Mimicking the real world in JMeter Extracting and reading the results Other key features Stress testing a database Using JMeter from the command line Editing a test plan in a text/XML editor JMeter Advanced: Distributed (Remote) Testing Preparing remote environment Running distributed Gathering and analysing results Variables Creating user variable Extracting data from a web page to a variable Functions Using functions Function helper Using BeanShell Scripting Short introduction to BeanShell Creating samplers BeanShell listener __BeanShell function Testing Application with Real Data Configuring Apache Web Server to record appropriate data Access Log Sampler Security issues
agilesofttest Agile Software Testing 14 hours This course has been created for test managers, quality assurance staff, testers, software developers, project managers and management in order to explain how the Agile project management frameworks (notably SCRUM) deal with testing. At the end of the course, each of the delegates will design and execute a test plan for a sample application (it can be an actual client application if available) Where the requirements come from? Traditional Business Analysis Use Cases, Scenarios and Tests Non functional requirements Performance Conformance UML in Business Analysis Introduction to testing Functional Tests Regression Test UAT Tests Unit Tests Usability Tests Non Functional Tests Performance test Load test Stress test Soak test Test or not to test Who is making decisions about what to test? The cost of testing irrelevant things Calculating ROI (what if something fails analysis) The role of Test Manager The process of Testing Testing is a process and a strategy Identifying testing needs Gathering requirements (use cases, user stories) Scoping (choosing and prioritize scenarios) Designing tests Preparing data Preparing environment Creating or Recording tests Perform the test Analysis and reports Conclusions and improvement When to say "stop" Product owner and Tests The customer representative and test priority Prioritizing tests Writing effective stories for UAT Acceptance criteria Group exercise to produce customer requirements and write stories based on the requirements and create tests The sprint Sprint backlog and tests user stories Group exercise to plan a sprint Finishing a sprint Scrum review meeting is a test Is Agile and Scrum for you? Review of the Scrum process Comparison with other methodologies Benefits of pair programming Question and Answers Session
restassured Rest Assured: Introduction to API testing for REST services 7 hours Testing and validating REST services in Java is harder than in dynamic languages such as Ruby and Groovy. REST Assured is a Java DSL (domain specific language) that brings the simplicity of these languages into the Java domain.   In this training, participants learn how to test REST API services. We discuss how API testing can resolve some of the shortcomings of UI and unit based testing. The training includes practice sessions and a test development project. By the end of the training, participants will have a good understanding of when to carry out REST API testing, how to explore and access APIs, how to carry out different types of testing, and how to bring their tests together through integration and automation. Audience     QA engineers, testers and test developers involved in testing software and web service APIs Format of the course     An instructor-led course that includes an introduction to API testing, its tools and processes, and a hands-on REST Assured based test development project. Introduction     What is API testing and why should you do it?     REST vs SOAP based API testing Overview of the three-tier architecture model     Presentation Tier – User interface (UI)     Logic Tier – Business logic (API)     Data Tier – database data (DB) Overview of the Rest Assured syntax     Similarities with Gherkin and BDD Creating a project Testing the logic tier Sending requests to the API     POST, GET, PUT, DELETE, OPTIONS, PATCH and HEAD requests Validating and verifying responses Testing API functionality Working with TestNG Testing API reliability Carrying out performance testing Carrying out security testing Debugging Automating your tests Closing remarks
softeng Software Engineering 35 hours Software Engineering starts where programming stops. In this course you will learn a solid foundation in Software Engineering. It builds a bridge from programming to solid engineering practices. The course gives you an overview of basic concepts and vocabulary typically used in the field. During the course, you will learn to use many techniques to plan, implement and validate software projects and to evaluate and improve development processes. Audience: This course is intended for software developers with various backgrounds who know at least one programming language. Day 1: Process Introduction What is Systems Engineering? What is Software Engineering? Why is Software Engineering difficult? System requirements System modeling Software Engineering Processes What is a Software Development Process? Traditional Processes Agile Processes Processes for building High-Integrity Systems Standards & certification systems High-Integrity Systems What are High-Integrity Systems? The role of QM culture Reasons for errors Critical systems standard Reliability engineering Software Maintenance Day 2: Planning Requirements User requirements Elicitation/analysis of user requirements System requirements Software requirements Specification of software Requirements process Tools to manage requirements Software Design Conways Law Design patterns Textual modeling tools Principles of OO design Design tools Common architectures Modeling Planning an architecture UML graphical representations Non-UML graphical representations Day 3: Code Software Construction How to take a design into code Programming best practices Abstraction of code Programming workflow Configuration Management What is Configuration Management? Configuration Management in ISO9000 and CMMI CASE tools for planning, design & QA CASE tools for writing software Version control with SVN System Integration Code for High-Integrity Systems Preventing errors Catching errors Reducing the impact of errors Typical problems with code for High-Integrity Systems Code quality metrics Code size metrics Code complexity metrics Non-code metrics Static analysis Day 4: Verification & Validation Reviews Fundamentals of VV Independent Verification & Validation Design and requirement reviews Code inspections Software Walkthroughs Audits Other V & V methods Testing High-Integrity Systems Documents regarding safety Scenarios Argumentation for safety Reviews of High-Integrity Systems Predicting reliability Formal methods Costs of V + V Automated Testing Why test? Automatic vs manual tests Incremental testing Types of tests Testing tools Test Harnesses Day 5: Management Project Management What is Project Management? Customer handover Standards (PMP, PRINCE2) Time management Cost management Risk management Project documentation Process Evaluation The function of process evaluation Acting on the metric Process metrics Process evaluation standards & frameworks (CMMI, ISO 9001, TickIt+) Process evaluation meetings Summary and Conclusions
jmeterfun JMeter Fundamentals 7 hours This course covers the creation and implementation of functional and unit testing with Apache JMeter, the free application testing software from The Apache Software Foundation. The purpose of the course is to allow organizations to completely automate their various testing requirements, saving time, money, and helping to minimize the risk of human error in testing. The program explores the concepts of designing and creating test plans for real-world web applications using Apache JMeter, including functional, regression and stress testing plans. Participants will learn how to design test plans for a variety of purposes and to use the various components and functions within JMeter to their advantage, permitting them to completely automate the web application testing process. Introduction Why use JMeter? Overview of functional/regression/stress testing principles Designing a basic test plan How to identify your testing needs Defining the steps of your test Creating your first JMeter test Introducing the JMeter GUI The basic elements of a JMeter test plan Building a functional test with your Internet browser Executing your functional test Reading the results of your test The power of JMeter Comprehensive overview of the available JMeter components and functions Implementing an advanced functional test using the key JMeter functions and components Regression testing Using your functional tests for regression testing Future proofing your tests Stress testing Identifying what you need to test Mimicking the real world in JMeter Extracting and reading the results Other key features Stress testing a database Using JMeter from the command line Editing a test plan in a text/XML editor
selntro Introduction to Selenium 7 hours This introductory course is designed to familiarize testing professionals with the basics of testing web applications using Selenium. Testers can build, enhance, and maintain scripts using both the Selenium IDE and the Selenium 2 WebDriver. Intended Audience The target audience is software testers who are seeking to automate the testing of web applications using Selenium. These testers maybe new to test automation and may also include quality assurance practitioners, managers, or team leaders who are responsible for interacting with testers or who need to ensure that the tools are being implemented fully and appropriately. At the end of the course, you will be able to: Describe the function and purpose of Selenium Understand the benefits and proper approach to test automation Record automated test cases Play back automated test cases Apply and use different verification techniques View and analyze results Configure and use the Selenium RC (Remote Control) Create and work with test suites Schedule automatic test runs Utilize different Selenium script formats Modify scripts to extend the capability to test the application Configure Selenium with Eclipse and the Selenium 2 WebDriver Understand and use RTTS helper files Convert selenium code to work with the Selenium 2 WebDriver Configure Custom Log Files Create a custom object map Create reusable modules to reduce script maintenance Use tools to help identify XPath Selenium Overview Purpose of Selenium Selenium IDE Using the Selenium IDE Recording and executing Test Cases Test Case Verification Working with Test Suites Test Case HTML Reports Selenium 2 WebDriver Setup Configuration with Eclipse Setting up Helper Files Setting up Templates Selenium 2 Test Scripts Setting Up Test Scripts in Eclipse Locating Web Elements Conversion of Verification Statements Creating Custom Log Files Creating Test Reports Test Script Enhancement Useful WebElement Methods Target Object Map Creation Test Modularization
rspectest Testing Ruby applications with RSpec 7 hours Getting Started with RSpec What is RSpec Features Test automation Where should I use RSpec Installation and first usage Getting closer to RSpec rspec-core rspec-expectations rspec-mocks rspec-rails Behaviour-Driven Development What does "behaviour" mean BDD and other testing methods Where should I use BDD Use Case/User Story and BDD The INVEST mnemonic - the idea of creating better user stories BDD and Agile RSpec integration with other tools Integration with Cucumber RSpec and Rails Testing with web-browsers simulators
ptloadrunner Performance-Messung mit LoadRunner 35 hours Audience Testing Managers Performance testers or Performance engineers Developers who want grow their career in performance testing. Format of the course 40% lectures, 60% labs Testing Introduction Software Development Life Cycle (SDLC) - Stages Various Methodologies in SLDC (Agile, waterfall etc) Functional Testing (Manual/Automation) Various testing's as part of SDLC ( Unit Testing, IST, UAT etc) Performance testing and its importance Performance Testing Concepts Introduction to Performance Testing Various tools available in the market Performance testing Life Cycle Recommendations/Report Scripting, Execution, Analysis Environment set up Test strategy/Plan POC (Proof of Concept) Requirements gathering Understanding of various performance tests. Capacity Planning test Benchmark Test Fail-over/Fail-back Test Stress Test Duration/Endurance Test Load Test Introduction to LoadRunner Scripting, Execution, Analysis in Load Runner Scripting using LR VuGen using various protocols Understanding of Winsock, Java vUser and webservices Web (Click & Script) Web (HTTP/HTML) Parameterization and various options under it Correlation (Manual/Automatic) Customized loops/code in scripting Execution using LR Controller Understanding of Load Generators Run time settings Manual/Goal-oriented scenario Ramp-up, Constant Duration, Ramp-down Analysis using LR Analyzer Granularity Merged graphs Analysis
junit Unit Testing with JUnit 21 hours JUnit jumpstart Proving it works Starting from scratch Understanding unit testing frameworks Setting up JUnit Testing with JUnit Exploring JUnit Exploring core JUnit Launching tests with test runners Composing tests with TestSuite Collecting parameters with TestResult Observing results with TestListener Working with TestCase Stepping through TestCalculator Sampling JUnit Introducing the controller component Let's test it! Testing exception-handling Setting up a project for testing Examining software tests Why we need unit tests Kinds of tests Determining how good tests are Test-driven development Automating JUnit A day in the life Running tests from Ant Running tests from Maven Running tests from Eclipse Coarse-grained testing with stubs Introducing Stubs Practicing on an HTTP Connection sample Stubbing the web server's resources Stubbing the connection Testing in isolation with mock objects Introducing mock objects Mock tasting's simple example Using mock objects as a refactoring technique Practicing on a HTTP connection sample Using mocks as Trojan horses Deciding when to use mock objects In-container testing with Cactus The problem with unit-testing components Testing components using mock objects Integration unit tests Introducing Cactus Testing components using Cactus How Cactus works Unit-testing servlets and filters Presenting the Administration application Writing servlet tests with Cactus Testing servlets with mock objects Writing filter tests with Cactus When to use Cactus, and when to use mock objects Unit-testing JSPs and taglibs Revisiting the Administration application JSP unit testing Unit-testing a JSP in isolation with Cactus Unit-testing taglibs with Cactus Unit-testing taglibs with mock objects When to use mock objects, and when to use Cactus Unit-testing database applications Database unit testing Testing business logic in isolation from the database Testing persistence code in isolation from the database Writing database integration unit tests Running the Cactus test using Ant Tuning for build performance Overall database unit-testing strategy Unit-testing EJBs Defining a sample EJB application Using a fa?ade strategy Unit testing JNDI code using mock objects Unit-testing session beans Using mock objects to test message-driven beans Using mock objects to test entity beans Choosing the right mock object strategy Using integration unit tests Using JUnit and remote calls Using Cactus
softengret Software Engineering, Requirements Engineering and Testing 63 hours Software Engineering 5 days Day 1: Project Management Project versus line management and maintenance and support Project definition and project forms Management – general rules and project management Management styles What is special for IT projects? Basic project process Iterative, incremental, waterfall, agile and lean project process Project phases Project roles Project documentation and other artefacts Soft factors and peopleware PRINCE 2, PMBOK, PMI, IPMA and other project standards Day 2: Business Analysis and Requirements Engineering Fundamentals Defining business goals Business analysis, business process management, business process improvement The boundary between business and system analysis System stakeholders, system users, system context and system boudaries Why are requirements necessary? What us requirements engineering The boundary between requirements engineering and architectural design Where is requirements engineering often hidden? Requirements engineering in iterative, lean, and agile development and in continuous integration – FDD, DDD, BDD, TDD Basic requirements engineering process, roles and artefacts Standards and certifications: BABOK, ISO/IEEE 29148, IREB, BCS, IIBA Day 3: Architecture and Development Fundamentals Programming languages – structural and object-oriented paradigms Object-oriented development – how much is history, how much is the future Modularity, portability, maintainability and scalability of architectures Definition and type of software architectures Enterprise architecture and system architecture Programming styles Programming environments Programming mistakes and how to avoid and prevent them Modelling architecture and components SOA, Web Services and micro-services Automatic build and continuous integration How much architecture design is there on a project? Extreme programming, TDD and re-factoring Day 4: Quality Assurance and Testing Fundamentals Product quality: what is it? ISO 25010, FURPS etc. Product quality, user experience, Kano Model, customer experience management and integral quality User-centred design, personas and other ways to make quality individual Just-enough quality Quality Assurance and Quality Control Risk strategies in quality control The components of quality assurance: requirements, process control, configuration and change management, verification, validation, testing, static testing and static analysis Risk-based quality assurance Risk-based testing Risk-driven development Boehm’s curve in quality assurance and in testing The four testing schools – which suits your need? Day 5: Process Types, Maturity and Process Improvement The evolution of IT process: from Alan Turing through Big Blue to lean startup Process and process-oriented organization The history of processes in crafts and industries Process modelling: UML, BPMN and more Process management, process optimization, process re-engineering and process management systems Innovative process approaches: Deming, Juran, TPS, Kaizen Is (process) quality free? (Philip Crosby) The need and history of maturity improvement: CMMI, SPICE and other maturity scales Special types of maturity: TMM, TPI (for testing), Requirements Engineering Maturity (Gorschek) Process maturity versus product maturity: any correlation? any causal relationship? Process maturity versus business success: any correlation? any causal relationship? A forsaken lesson: Automated Defect Prevention and The Next Leap in Productivity Attempts: TQM, SixSigma, agile retrospectives, process frameworks Requirements Engineering - 2 days Day 1: Requirements Elicitation, Negotiation, Consolidation and Management Finding requirements: what, when and by whom Stakeholder classification Forgotten stakeholders Defining system context – defining requirements sources Elicitation methods and techniques Prototyping, personas, and requirements elicitation through testing (exploratory and otherwise) Marketing and requirements elicitation – MDRA (“Market-Driven Requirements Engineering”) Prioritising requirements: MoSCoW, Karl Wiegers and other techniques (including agile MMF) Refining requirements – agile “specification by example” Requirements negotiation: types of conflicts, conflict-solving methods Solving internal incongruence between some types of requirements (e.g. security versus ease of use) Requirements traceability – why and how Requirements status changes Requirements CCM, versioning and baselines Product view and project view on requirements Product management and requirements management in projects Day 2: Requirements Analysis, Modelling, Specification, Verification and Validation Analysis is the thinking and re-thinking you do between elicitation and specification Requirements process is always iterative, even in sequential projects Describing requirements in natural language: risks and benefits Requirements modelling: benefits and costs The rules for using natural language for requirements specification Defining and managing requirements glossary UML, BPMN and other formal and semi-formal modelling notations for requirements Using document and sentence templates for requirements description Verification of requirements – goals, levels and methods Validation – with prototyping, reviews and inspections, and testing Requirements validation and system validation Testing - 2 days Day 1: Test Design, Test Execution and Exploratory Testing Test design: after risk-based testing, choosing the optimum way to use the time and resources available Test design “from infinity to here” – exhaustive testing is not possible Test cases and test scenarios Test design on various test levels (from unit to system test level) Test design for static and for dynamic testing Business-oriented and technique-oriented test design (“black-box” and “white-box”) Attempting to break the system (“negative testing”) and supporting the developers (acceptance testing) Test design to achieve test coverage – various test coverage measures Experience-based test design Designing test cases from requirements and system models Test design heuristics and exploratory testing When to design test cases? – traditional and exploratory approach Describing test cases – how much detail? Test execution – psychological aspects Test execution – logging and reporting Designing tests for “non-functional” testing  Automatic test design and MBT (Model-Based Testing) Day 2: Test Organization, Management and Automation Test levels (or phases) Who does the testing, and when? – various solutions Test environments: cost, administration, access, responsibility Simulators, emulators and virtual test environment Testing in agile scrum Test team organization and role Test process Test automation – what can be automated? Test execution automation – approaches and tools
seleniumjmeter Web Application Testing with Selenium and JMeter 35 hours This course provides training for handling testing projects and provides hands on experience with web applications, functional test automation and cross browser test automation using Selenium test suite. Also it comprehesively introduced jMeter. Roughtly 2 days of JMeter and 3 days of Selenium. JMeter Fundamentals This course covers the creation and implementation of functional and unit testing with Apache JMeter, the free application testing software from The Apache Software Foundation. The purpose of the course is to allow organizations to completely automate their various testing requirements, saving time, money, and helping to minimize the risk of human error in testing. The program explores the concepts of designing and creating test plans for real-world web applications using Apache JMeter, including functional, regression and stress testing plans. Participants will learn how to design test plans for a variety of purposes and to use the various components and functions within JMeter to their advantage, permitting them to completely automate the web application testing process. JMeter Advanced This course deals with advanced web application testing techniques. It focuses on full automation, scripting, integrating tests with external data source. Course Outline:  JMeter Fundamentals: Introduction Why use JMeter? Overview of functional/regression/stress testing principles Designing a basic test plan How to identify your testing needs Defining the steps of your test Creating your first JMeter test Introducing the JMeter GUI The basic elements of a JMeter test plan Building a functional test with your Internet browser Executing your functional test Reading the results of your test The power of JMeter Comprehensive overview of the available JMeter components and functions Implementing an advanced functional test using the key JMeter functions and components Regression testing Using your functional tests for regression testing Future proofing your tests Stress testing Identifying what you need to test Mimicking the real world in JMeter Extracting and reading the results Other key features Stress testing a database Using JMeter from the command line Editing a test plan in a text/XML editor JMeter Advanced: Distributed (Remote) Testing Preparing remote environment Running distributed Gathering and analysing results Variables Creating user variable Extracting data from a web page to a variable Functions Using functions Function helper Using BeanShell Scripting Short introduction to BeanShell Creating samplers BeanShell listener __BeanShell function Testing Application with Real Data Configuring Apache Web Server to record appropriate data Access Log Sampler Security issues Selenium Understanding the Structure of Web Pages and Applications (25%) Understanding locators (major focus on XPath, sub-focus on mane ID and CSS) How to break a web page down into testable parts Testing concepts and strategy Selenium IDE (25%) IDE features Building test cases Creating test suites Executing tests Selenium commands Troubleshooting Best practices, TIPs Testing AJAX applications Verify page elements Selenium WebDriver (50%) Installation and configuration Running test suites against various browsers Cross browser testing Debugging Selenium Grid Configuration Distributed testing Creating batch files Cross browser testing  
bddtest BDD - Behavioral testing of IT systems 7 hours The training is designed for both IT and business staff. The aim of the course is to provide a way to facilitate communication between departments in the software development process. Participants learn behavioral testing to make it possible to create more reliable software without the need for costly and advanced tools. Common communication problems Reasons of communication problems Hermetic language The human factor - main problem in IT projects Need of unified language Customer requirements analysis Specifying business values DDD BDD - practice Introduction to behavioural testing "Black box" testing BDD versus TDD? BDD versus functional and unit testing Abstract level of BDD Gherkin syntax - idea of language for business and IT Structure of the stories: role, feature, benefit, context, event, outcome Writing good stories - business scenarios Story and Use Cases BDD libraries - Java/.NET/PHP support Behavioural testing of internet applications Using BDD with Selenium Simulating business case with BDD, creating sample system based on BDD
usabilitytesting Software Usability Testing: Live Workshop 14 hours Usability testing is a technique for evaluating a software product or system by testing it on users to directly observe how they interact with it. The workshop begins with an introduction to usability testing, what it is and how it is used by companies to promote good software design and development. The language is non-technical and the learning is practical and hands-on, with a focus on end-users, their requirements, way of thinking and way of interacting with the system. By the end of this training, participants will know how to: Determine the most suitable usability test approach based on a product's unique characteristics and its stage in the development cycle. Develop a usability test plan. Recruit, evaluate and manage testers. Write, assign, and moderate usability test tasks that produce the biggest impact for end-users and the business. Collect, analyze and report test results. Communicate and collaborate effectively with business managers, developers and QA teams on the significance and actions needed for delivering an end product that not only works but works well and provides the intended user experience. Audience Product owners and managers QA managers Manual testers Internal users of a software product or system Format of the course A interactive, instructor-led workshop with lots of activities and hands-on practice. Notes The case studies and software samples used in this workshop are pre-arranged by the instructor. To customize the materials, please contact us in advance. Introduction     The need for usability testing Defining your test strategy     Resources, timing and focus Organizing the test team     Recruitment and management Writing your first test task     Scenarios and presentation Choosing the environment     Remote testing vs on-site testing Moderating your usability tests     Moderated vs unmoderated     “Thinking aloud” usability test Analyzing the results of your tests     Statistics and surveys     Measuring satisfaction Revisiting your test tasks     Questioning initial assumptions     Regrouping and revising Reporting the results of your tests Standardizing your usability tests     International standards     Using and adapting standardized forms and templates Communicating and collaborating on usability testing across teams Closing remarks
selwebd Complete Web Testing Environment with Selenium WebDriver and JMeter 35 hours This course give a comprehensive overview how to use automated functional and performance testing with Selenium and JMeter using Java/Maven environment. 3 days is spend on Selenium, 2 on JMeter. Selenium Introduction What is Selenium Tool Use of Selenium tool in automation Features of Selenium Tool Components Difference between Selenium and other tools Selenium IDE Selenium Web Driver Selenium Grid Selendriod introduction Installations Install Eclipse IDE (preferrable Mars version) Install/Validate Java JDK 1.7 and Higher Install Plug-ins (TestNG, Maven,etc.) Install Selenium (latest stablized version) Install all/required Browser Drivers Install all supported libraries, drivers, jars, plug-ins, etc. Configurations Configure class path/path for system and user level Configure eclipse with all needed libraries, Java Configure IE Devtool, FireBug, Firepath, etc. with browsers Begin Sample Test Languages supported in Selenium Record and Run the script in Selenium IDE Write and Run the script in Selenium Web Driver View and Analyze Test Results Using Selenium What is Synchronization How to put validations (asset, verify) How to launch browser and application/URL How to configure browser parameters using custom code Working with Java with Selenium (class, package, OOPs, etc.) Understanding DOM  How to identify objects/elements using selenium Handling windows How to read text/values from Web Page How to enter values into elements/objects Working with DOM Objects (buttons, links, select, choose, tables, etc.) How to select/choose value(s) using list/comboxbox How to select/choose check box/radio button How to hanlde mouse, key board events Implementation of exception handling in selenium How to handle multiple browsers Handling Alerts Handling windows alerts using AutoIT Data Driven Tests What is data driven testing Parameterizing the test scripts using excel Read, Write the data into/from excel Working with CSV, XLS, Flat files and DB TestNG What is TestNG Create TestNG.XML file / Test / TestSuite Integrate with Selenium scripts Run from TestNG Run from TestNG TestNG Annotations Tags in TestNG.XML file Working with Groups POM Introduction to Page Object Model Framework Introduction to Page Object Model Framework Using properties file Log4J Introduction  Implementation in selenium Generating log files and analyze MAVEN Introduction Creating MAVEN project Configuring with selenium and java Build/Run the build Grid Introduction Remote Web Driver Configuring Hub Configuring Node Running scripts on remote computer / parallel execution Converting Project What is project conversion How to convert Java project into Maven and Vice-versa Automation Framework Introduction to Automation Frameworks Types of frameworks and benefits Working with extended programming (Java) Approach How to build automation frameworks Understanding test automation approach JMeter These 2 days cover the creation and implementation of functional and unit testing with Apache JMeter, the free application testing software from The Apache Software Foundation. The purpose is to allow organizations to completely automate the various testing requirements, saving time, money, and helping to minimize the risk of human error in testing. We explore the concepts of designing and creating test plans for real-world web applications using Apache JMeter, including functional, regression and stress testing plans. Participants will learn how to design test plans for a variety of purposes and to use the various components and functions within JMeter to their advantage, permitting them to completely automate the web application testing process. We will also cover advanced web application testing techniques focusing on full automation, scripting, integrating tests with external data source. Fundamentals: Introduction Why use JMeter? Overview of functional/regression/stress testing principles Designing a basic test plan How to identify your testing needs Defining the steps of your test Creating your first JMeter test Introducing the JMeter GUI The basic elements of a JMeter test plan Building a functional test with your Internet browser Executing your functional test Reading the results of your test The power of JMeter Comprehensive overview of the available JMeter components and functions Implementing an advanced functional test using the key JMeter functions and components Regression testing Using your functional tests for regression testing Future proofing your tests Stress testing Identifying what you need to test Mimicking the real world in JMeter Extracting and reading the results Other key features Stress testing a database Using JMeter from the command line Editing a test plan in a text/XML editor Advanced: Distributed (Remote) Testing Preparing remote environment Running distributed Gathering and analysing results Variables Creating user variable Extracting data from a web page to a variable Functions Using functions Function helper Using BeanShell Scripting Short introduction to BeanShell Creating samplers BeanShell listener __BeanShell function Testing Application with Real Data Configuring Apache Web Server to record appropriate data Access Log Sampler Security issues
agilecat Certified Agile Tester 35 hours The iSQI Certified Agile Tester is an internationally recognised software testing qualification, specifically designed for testers working in Agile environments. This course delivers the fully-accredited iSQI syllabus and provides the required assessments to gain the certification. This assessment is in three parts: an assessment of the delegates’ soft skills as observed through the duration of the course; a practical exam, giving the delegate the opportunity to demonstrate their practical testing ability; and an open-ended written exam, testing their knowledge of the subjects covered by the course.  The course fee includes: iSQI/BCS registration Exam fees Course materials Exam invigilator. Course Objectives Understand the principles behind the agile approach to software development Differentiate between the testing role in agile projects compared with the role of testers in non-agile projects  Positively contribute as an agile team member focused on testing Appreciate the challenges and difficulties associated with the non-testing activities performed in an agile team Demonstrate a range of soft skills required by agile team members Day 1 - Agile Methods & Processes Introduction Daily SCRUM Problems with Tradition Agile Manifesto & Principles Agile Methods Agile Process Option Roles Introduction to Agile Exercise Sample Questions Day 2 - Planning Requirements & Specifications Iteration 0 Release Planning Task Board Test Strategy Estimation Iteration Planning Burndown Charts Sprint Practice Exercises Sample Questions Day 3 - Testing Continuous Integration Version Management Pairing Acceptance Criteria Regression Testing Defect Management Testing Exercises Sample Questions Day 4 - Teams Test Automation Non Functional Testing Debt Technical & Testing TDD Teams Agile for Large Projects Summary Testing Exercises Sample Questions Day 5 - Assessment Practical Assessment Written Exam Revision Written Examination
bddfornonprogrammers BDD for Non-Programmers: Live workshop 14 hours BDD, or Behavior Driven Development, is an Agile software development technique that encourages collaboration among developers, quality assurance teams and non-technical business people throughout the planning, development and testing cycle of a software project. The workshop begins with an introduction to BDD, what it is and how it is used by companies to promote good software design, development and testing. We do this from a non-engineering point-of-view, with an eye on the end-users, their requirements, language, and way of thinking. We also address the communication challenges that business stakeholders are likely to encounter as they work closer with their technical-minded peers. By the end of this training, participants will know how to: Write succinct user stories that capture the usage patterns of real users of the software Translate their user stories into the behavioral language of BDD (Given, When, Then) Derive test cases from these stories, for use by engineers to implement and test Understand the relationship between product requirements, acceptance criteria, and test cases Demystify the technical jargon that impedes communication and understanding Install and use great tools for writing BDD feature files Understand and appreciate what happens once the work is handed to engineers Play a more active role in the iterative development cycle Audience Product owners and managers Business analysts Manual testers End-users of a software product or system Non-engineers and non-coders involved in product design Format of the course A interactive, instructor-led workshop with lots of activities and hands-on practice. Notes The workshop includes cases and software samples from the instructor's own experience. To customize the materials to your company's product and situation, please contact us to arrange. Our aim is to make the learning as practical and relevant for all participants! ============== Day 01 ===================== Introduction     Why BDD?     BDD as an extension of Agile     Agenda for Day 01 Applying BDD at different stages in the software development cycle     Before development     During development     After development One language to rule them all     Engineers and non-engineers speak different languages     Bridging the gap through BDD     A preview of the BDD language: Gherkin The different roles of BDD     BDD as product requirements (for product owner)     BDD as acceptance criteria (for developers)     BDD as test cases (for testers)     BDD as a description of the product (for other statke holders) Back to Agile: it all starts with User Stories     Overview of the Agile development cycle     The role of User Stories in Agile development Q&A session and discussion Quiz Creating a good User Story     Using the right language         Role, Action, Outcome     A sample User Story Activity - Writing a User Story     Writing your first User Story - individual activity     Tightening your User Stories - team activity     Delivering your User Story - team activity User Stories in real projects     Team dynamics     Tools and techniques     User Stories in the software development cycle On to BDD     Extending the User Story     Introducing the Feature File     Capturing the expected behavior of software     Imagining what "unexpected" behavior looks like Creating a good Feature File     Using the right language (Gherkin)         Given, When, Then     A sample Feature File Activity - Writing a Feature File - PART 01     Writing your first Feature File - individual activity         Feature section         Scenario section     Tightening your Feature File - team activity     Delivering your Feature File - team activity Feature Files in real projects     Team dynamics     Tools and techniques     User Stories in the software development cycle Q&A session and discussion Quiz Setting up your environment     Making Gherkin pretty     The joy of productivity Activity - Writing a Feature File - PART 02     Writing your Feature File - individual activity         Passing multiple arguments to your Scenario         Scenario Outline section     Tightening your Feature File - team activity     Delivering your Feature File - team activity Q&A session and discussion Quiz Closing remarks ============== Day 02 ===================== Introduction     Recap of previous day     Agenda for Day 02 Your own product - an introspection     Describing your product     Drawing a picture of your product Extending test coverage     Usability of the system     Business requirements     Business processes Activity - Writing a Feature File - PART 03     Writing your Feature File - individual activity         Examples section         Reusing data and scenarios         Organizing features and scenarios with tags     Tightening your Feature File - team activity     Delivering your Feature File - team activity Q&A session and discussion Quiz The Feature File - what to leave out     What to leave to the engineers         Low-level functionality (unit tests)         Exhaustive cross-component functionality (integration and API testing) Q&A session and discussion Quiz Your own product - an introspection     How usable is your product?     How usable is your product to outside users? Communication with people outside your team Closing remarks
ioscdcuttdd iOS Core Data, Concurrency, Unit Testing & TDD 40 hours This is and advanced course to provide an in-depth tour through the most important and complex points of iOS development identified from experiences in many real projects, allowing the incorporation of these concepts into application development immediately. It is intended for programmers with at least 1 year of experience developing iOS applications. It is assumed that students are familiar with the development Objective-C and know object-oriented programming and basic design patterns such as the delegation, Model-View-Controller or singleton among others. Goals As a result of attending the course, students will: - Get in-depth knowledge on how to implement an application with advanced persistence requirements. - Assimilate Test Driven Development (TDD) methodology and apply it to advanced projects with Core Data. - Write applications that solve real life problems with Core Data (import and export, data migration, and fetching and merging data in multitasking apps, among other things.) - Understanding the mechanisms of concurrency in IOS and their use in real projects. - Learn how to apply TDD even to view controllers using standard tools as well all that is required to implement unit testing in iOS applications.Advanced Persistence - Review of MVC - Concepts Core Data: the problem and solution design. - Example implementation with Xcode template: entities, attributes, and relationships. - Queries using fetch requests and fetched results controller. - NSManagedObject subclasses, categories, and overview of alternatives - Queries and subqueries predicates. - CRUD in a hierarchical tableview application. Tests - Concepts Unit Testing. - Concepts TDD. - Mocks and stubs. - First attempts: Red-Green-Refactor. - Fundaments on Pair Programming. - Testing Core Data models. - Refactoring tests. Data - Preload data: populating the app. - Importing and exporting data. - Version control and migration. - Automatic migration. - Complex migrations. Concurrency - Concepts on concurrency. - GCD. - Blocks. - Advanced Core Data - Core Data Concurrency. - Consultations and complex multitasking operations. Q & A Lessons learned
serenitybdd Serenity BDD: Writing better automated acceptance tests 7 hours "40% to 70% of the time spent by many test automation teams is spent on maintaining their test suites ...either refactoring tests because the application changed but also just sifting through the results of the tests when they break..." -- John Furguson Smart, creator of Serenity. Serenity is an open open-source reporting library that enables testers to write well-structured, maintainable acceptance criteria. Serenity produces rich and meaningful test reports ("living documentation") that not only report on the test results, but also document what they did, in a step-by-step narrative format that includes test data and screenshots. In this training participants will learn how to write high quality tests by employing "screenplays" and the idea of "actors, tasks, and goals" to express tests in business terms rather than as interactions between system components. We look at both functional and UI testing scenarios and demonstrate how Serenity can be used to manage their testing. All lecture, notes, quizes and discussions are accompanied by live hands-on practice and implementation. By the end of this training, participants will understand the Serenity framework and be able to utilize it with comfort. As important, participants will learn to think of and approach test automation from a different light. Audience     Automation testers Format of the course     This course walks participants through real-life cases for Behavior Driven Development (BDD) and demonstrates hands-on how to implement Serenity in various test scenarios. Introduction     Automated Testing     ATDD (Acceptance Testing Driven Development)     BDD (Behavior Driven Development) Why Serenity?     Test reports as "living documentation"     Actors, tasks, and goals     Screenplay pattern vs page objects Serenity architecture     Pages, Steps, Requirements, Tests, Reports Setting up and configuring your test environment     JUnit, Serenity BDD, and a little Selenium WebDriver Defining requirements and acceptance criteria Automating your acceptance criteria Setting up your Screenplays     Screenplay questions     Serenity abilities Testing a web application with Screenplay Writing your first Serenity test Screenplay web interactions Screenplay web questions Handling timeouts and waits Running your Serenity test Generating Serenity test reports A look at the Serenity project structure Integrating Serenity with Cucumber and JBehave Closing remarks
agilesofttesto Agile Software Testing Overview 7 hours Testing Foundations Artefacts and terminology Fundamental test process  Testing Principles Testing quadrants and test types Collaboration & QA Test automation Tests that guide development Unit testing  Functional testing & acceptance criteria Test-driven approaches Tests that critique the product Exploratory testing  Non-functional testing Test design techniques 
hpuft Test automation with HP UFT 21 hours Module 1: HP UFT Overview • UFT Start page Module 2: Preparing to Record / Benefits Test Automation • Navigate the typical GUI testing workflow • Document the steps of a business process • Prioritize business processes using effective criteria • Gather sufficient test data • Prepare the test environment for automated testing Module 3: Converting manual test case to automated test • Run a test and check for errors • Save a test • View test results Module 4: Identify an object • Identify objects in UFT for GUI Testing • Use the Object Repository to manage test objects in UFT for GUI Testing Module 5: Share Object Repository • Identify the types of object repositories • Manage shared object repositories using the Object Repository Manager • Use visual relation identifiers Module 6: Synchronization Object • Define synchronization in UFT for GUI Testing • Identify the uses of synchronization in UFT for GUI Testing • Add a synchronization step for a specified object Module 7: Using checkpoints • Define standard checkpoints • Add standard checkpoints to a test • Use a regular expression to add flexibility to a standard checkpoint Module 8: Using Parameters • Insert an input or output parameter • Insert an output parameter • Parameterize a checkpoint • Evaluate test results for iterative tests Module 9: How to use reusable actions • Identify actions in GUI testing • Identify action types • Identify action and test iterations • Identify calls to existing actions and copies of actions • Share values using the global data table • Call actions with parameters • Store action return values • Create multiple actions from a single action • Create a new action • Call a reusable action from another test • Use local and global data sheets • Resolve missing actions Module 10: Adding stepts without recording tool • List the types of steps that can be added to a test without using the record feature • Use conditional statements in a test • Use the Step Generator • Use the reporter object to report events in the test results Module 11: Creating Tests on a Web Application • Record and run a test on a web application • Insert standard checkpoints on web objects • Insert a text checkpoint in a test for a web application Module 12: Testing web services with UFT API • Define Service Oriented Architecture (SOA) • Identify components of SOA • Define the terminology and principles surrounding component testing • Navigate the UFT UI for API testing • Create a basic Service Test (API Test) in UFT
soapui SoapUI: Introduction to API testing with SoapUI 21 hours SoapUI is the most widely-used open source API testing tool for SOAP and REST APIs. It offers SOAP Web Services functional testing, REST API functional testing, WSDL coverage, message assertion testing and test refactoring. In this training, participants learn how to test web services using SoapAPI. We discuss how API testing can resolve some of the shortcomings of UI and unit based testing. The training includes practice sessions and an API test suite development project. By the end of the training, participants will have a firm idea of when to implement API testing, how to explore and access APIs, how to carry out different types of testing on both SOAP and REST based APIs, and how to bring their work together into an integrated, automated test suite. Audience QA engineers Testers and test developers involved in testing software and web service APIs Format of the course An instructor-led course that includes an introduction to API testing, its tools and processes, and a hands-on SoapUI based test suite development project. Introduction     API testing vs Unit testing and UI testing Overview of protocols     SOAP, REST, HTTP, JMS, AMF and JDBC Overview of SoapUI features Project types in SoapUI     SOAP projects     REST projects     Generic projects Creating a project Importing a project Exploring your application APIs with Fiddler and Postman Simulating and mocking web services Creating and executing functional tests Creating and executing regression tests Creating and executing load tests Security testing with SoapUI Carrying out compliance testing Database testing with SoapUI Multi-layer test automation with Selenium Extending test coverage Reporting Working with SoapUI plugins Automating your SoapUI tests SoapUI integration with Jenkins End-to-end test automation API testing best practices Closing remarks
istqbate ISTQB - Agile Tester Extension - Exam Preparation 21 hours This is preparation course for Agile Tester Extension Exam by ISTQB. The price of the exam is not included the the price of the course. Agile Software Development The Fundamentals of Agile Software Development Aspects of Agile Approaches Fundamental Agile Testing Principles, Practices, and Processes The Differences between Testing in Traditional and Agile Approaches Status of Testing in Agile Projects Role and Skills of a Testiner in an Agile Team Agile Testing Methods, Techniques, and Tools Agile Testing Methods Assessing Quality Risks and Estimating Test Effort Techniques in Agile Projects Tools in Agile Projects
ISAM1 ISTQB CTFL 21 hours ISTQB CFTL 70% theory + 30% practice SW testing fundamentals  Testing throughout the life cycle  Static techniques  Test design techniques  Test management  Tool support for testing
protractor Protractor: End-to-end testing for Angular web applications 14 hours Protractor is an end-to-end automation test framework for Angular and AngularJS applications. It is used to run tests against web applications, interacting with them as a user would: by filling out forms, clicking on elements, and navigating from page to page. In this instructor-led training, participants learn first-hand how to write Protractor tests against a sample Angular web application in a live lab environment. By the end of this course, participants will have gained proficiency in Protractor and be comfortable creating their own automation tests for Angular applications integrating Protractor into their existing development workflow ensuring that their tests are clean and maintainable Audience Web developers Automation test engineers Format of the course Part lecture, part discussion, heavy hands-on practice Introduction     Why use Protractor? Setup and installation How Protractor works Overview of Protractor syntax Understanding promises and promise-based tests A sample application Setting up your SUT (system under test) Writing your first test Unit testing Javascript with Jasmin or Mocha Locating and interacting with web elements Accessing web elements through Page Objects Using the Chai WebDriver Generating test reports Debugging Protractor tests Making your code maintainable and easy to read Running tests on multiple browsers Mocking HTTP requests Using Cucumber with Protractor Integrating Protractor into your development workflow     Git     Jenkins Closing remarks
selwebdrv Selenium WebDriver Overview 7 hours Who Should Attend Anyone looking to use ‘Test Automation with Selenium Web Driver’ within a business or for personal use Overview Learn how to have confidence understanding Test Automation with Selenium Web Driver Learn how to use the information of the course to your advantage You will cover the main aspects of Test Automation with Selenium Web Driver: Java concepts overview Browser tools Inspecting web elements Selenium WebDriver and JUNIT Keyboard and mouse events Handling pop ups
condev Contemporary Development Principles and Practices 14 hours The course covers contemporary development principles and practices, including the place of project management, testing and business analysis, within Agile and traditional Waterfall contexts. The course is intended to be workshop-style with opportunities for delegates to ask questions and explore real life application of the content. This course comprises a series of modules with each module designed to take 1.5hrs, ie 1 training day would consist of 4 modules. Intended Audience This course is aimed at those who want to gain a rapid overview of contemporary Waterfall & Agile software development and the impact on project management, testing and business analysis. Module 1:  Traditional Development Approaches 1.1 Overview of Sequential, Predictive Development Approaches Description of sequential, predictive ‘Waterfall’ approaches Timeline of evolution of Waterfall approaches 1.2 Strawman Waterfall Dr Winston Royce’s Waterfall model Benefits of Waterfall for controlling projects Royce’s “Inherent risks” 1.3 V-Model Early verification and validation Benefits of V-model 1.4 Incremental Models Example of Rational Unified Process Incremental delivery Breaking down scope and managing risk 1.5 When to Use Waterfall Defined process control Module 2:  Prince2 Overview 2.1 What is Prince2? Definition and origins Prince2 Certifications: Foundation, Practitioner, Agile Benefits of Prince2 2.2 Prince2 Methodology Roles – Project manager, customer, user, supplier, project board Management Techniques – Project assurance, project support Scope - Interaction with contracts and contractual management Controlling Change – Risk, quality, and change management 2.3 Prince2 Process Model Directing a project Starting up a project Initiating a project Managing stage boundaries Controlling a stage Managing product delivery Closing a project Planning                              Module 3:  Agile Overview 3.1 Historical Overview Timeline of evolution of ‘Agile’ ideas 90’s to present Early Agile approaches – Scrum, XP, DSDM Agile Developments – Kanban, BDD, DevOps, Scaling 3.2 The Agile Manifesto Background to creating the Manifesto Agile Manifesto overview Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan Module 4:  Agile Principles 4.1 The 12 Agile Principles Group discussion on each principle 4.2 Summary of Agile concepts Iterative planning and development Continuous improvement Continuous learning Collaboration and face-to-face communication Collective accountability Cross-functional teams Module 5:  Agile Project Management with Scrum 5.1 The Scrum Framework Overview – Scrum Guide 2016 Scrum roles and responsibilities – Scrum Master, Product Owner, Team Scrum events – Sprint, Sprint Planning, Review, Retrospective, Daily Scrum Scrum artefacts – Product Backlog, Sprint Backlog, Product Increment 5.2 Agile Project Management Principles Empirical Process Control Iterative planning and reporting Continuous Improvement and retrospection Resource management and teams Module 6: Software Testing 6.1 Testing Fundamentals The Fundamental Test Process Planning, Analysis & Design, Execution, Evaluation, Closure Test levels – unit, integration, system, user acceptance Test approaches – requirements-based, risk-based, experience-based Test design techniques – white-box, black-box techniques 6.2 Agile Testing Agile Testing Quadrants overview – test strategy, planning Test-driven development Test automation principles – test automation pyramid 6.3 Test Types Technology-facing tests that guide development Unit testing, TDD, smoke tests Business-facing tests that guide development Story tests, examples, acceptance testing Business-facing tests that critique the product Exploratory testing, Alpa/Beta testing, UAT Technology-facing tests that critique the product Performance testing, usability, quality attributes               Module 7:  Traditional Business Analysis 7.1 What is Business Analysis? Business analysis and the business analyst Levels of business analysis – enterprise, project, operational Business Analysis principles 7.2 IIBA BA Book of Knowledge – Knowledge Areas Business Analysis Planning and Monitoring Elicitation and Collaboration Requirements Life Cycle Management Strategy Analysis Requirements Analysis and Design Definition Solution Evaluation Module 8:  Agile Business Analysis 8.1 Agile Business Analysis Considerations Iterative development Cross-functional teams Collaboration between business and technology areas 8.2 Behaviour-Driven Development Overview Origins in TDD and recent developments Definitions – BDD, ATDD, Specification by Example 8.3 BDD Activities Focus on features that deliver business value Derive features collaboratively Keep options open Use concrete examples to illustrate features Write executable specifications Create living documentation 8.4 Agile BA Techniques & Tools Business value definition Personas Impact Mapping Real options User Stories and acceptance criteria Relative estimation Given-When-Then template Tool support for BDD
qaci Quality Assurance and Continuous Integration 14 hours Training is open to both developers, Scrum Masters, Product Owner and also some aspects of the business department. The purpose of training is to introduce topics Quality Assurance and Continuous Integration and their place in projects conducted agile methodologies. Participants will gain a broad perspective on the issues discussed as well as practical knowledge of the tools and processes of software development in line with the QA / CI. Representatives of business, will be able to know the benefits of implementing those tools and processes and translate into both the time and cost of software development. The issues presented are based on PHP or Java, depending on customer requirements. QA/CI What is QA? What is CI? The costs of software development, refactoring and fix errors Identifying and understanding the project Profit for the organization DDD Software development based on business requirements, assumptions DDD Problems in communication IT-Business Domain Model Best Practices KISS principle and DRY Coding standards Creating reusable code through OOP and design patterns Identifying and reducing cyclomatic complexity Software Metrics Weight Method per Class Response For a Class Depth of Inheritance Tree Coupling Between Objects Lack of Cohesion of Methods Number of Children Cyclomatic complexity Metrics class Model Metrics Metrics for use Software Testing What, when and how to test? The method of "white-box" and "black box" The role of testing in agile methodologies TDD only a potential increase in the cost of the project Unit testing with JUnit (Java), PHPUnit (PHP) Behavioral tests of JBehave (Java), Behat and Mink (PHP) Functional tests Refactoring What is refactoring? Debt technology Code smell Refactoring patterns Documentation The role of documentation in agile methodologies What to document? Types of documentation Documentation and agile methodologies, or you can call (Working software over comprehensive documentation)? Standard XMI Automatic generation of documentation from the Javadoc (Java), ApiGen (PHP) Tools and Environment CI Tools and Environment CI PMD (Java), phpmd (PHP) CPD (Java), phpcpd (PHP) Lines Of Code Counter (Java), phploc (PHP) UCDetector (Java), phpdcd (PHP) Jdepend (Java), phpdepend (PHP) Jenkins Continuous Integration Server Agile and CI/QA Planning and incremental development Embracing Change Short stages Interdisciplinary team Extreme Programming, Code Review Individuals and interactions over processes and tools Summation Discussion Questions How do you begin the process of implementation?
propertybasedtesting Property Based Testing with F# 7 hours Property-based Testing is an automated testing technique that allows you to zero in on the expected behavior of a system by describing its properties, then using randomly generated test data to execute tests. "Describe the arguments, describe the result, have the computer try to prove your code wrong!" Some of the topics covered in this instructor-led, live training include: How to write and run tests with F# The FsCheck Property-based Testing framework Using Diamond Kata to implement TDD Sharpening your code design skills Audience     Automation test engineers     Developers Format of the course     Part lecture, part discussion, exercises and heavy hands-on practice Pending... To request a customized course outline for this training, contact us now!

Upcoming Courses

CourseCourse DateCourse Price [Remote / Classroom]
Performance-Messung mit LoadRunner - Berlin Mon, 2017-10-16 09:304890EUR / 6090EUR
Testing Ruby applications with RSpec - MünchenMon, 2017-10-23 09:301670EUR / 2020EUR

Other regions

Weekend Software Testing courses, Evening Software Testing training, Software Testing boot camp, Software Testing instructor-led , Evening Software Testing courses,Weekend Software Testing training, Software Testing on-site, Software Testing trainer , Software Testing instructor, Software Testing one on one training , Software Testing coaching, Software Testing private courses, Software Testing training courses

Course Discounts

Course Discounts Newsletter

We respect the privacy of your email address. We will not pass on or sell your address to others.
You can always change your preferences or unsubscribe completely.

Some of our clients