Software Testing: intermediate
Expertise:
- 29 Courses | 35h 8m 38s
- 7 Books | 42h 39m
- Includes Lab
- 44 Courses | 47h 19m 58s
- 6 Books | 36h 27m
- Includes Lab
- 1 Audiobook | 10h 26m 22s
- Includes Test Prep
- 6 Courses | 5h 19m 53s
- 7 Books | 52h 6m
Software testing is a set of methodologies for ensuring the smooth operation and integrity of applications. Explore its various aspects here.
GETTING STARTED
Software Testing for DevOps: Testing & DevOps Overview
-
1m 42s
-
3m 22s
GETTING STARTED
Tester Foundation Level 4.0: Software Testing Basics
-
37s
-
5m 41s
COURSES INCLUDED
Software Testing for DevOps: Testing & DevOps Overview
Learners can explore a foundational overview of DevOps testing, including best practices; key software testing strategies; how software testing has evolved with the adoption of DevOps movement; and key terms and concepts specific to DevOps testing and operations in this 13-video course. Begin by studying key concepts underpinning DevOps software development and deployment, then key principles behind the DevOps movement represented by the acronym CALMS (Collaboration, Automation, Lean, Measurement, and Sharing). Examine the Software Development Life Cycle (SDLC) within a DevOps software development movement, and how Agile started a changing approach to software testing that culminated in DevOps. Explore key concepts of a DevOps pipeline; how DevOps requires a different approach to software testing; testing strategies; and key software testing strategies and techniques in production within DevOps culture. Examine DevOps testing best practices and learn how to use Jira for tracking customer feedback on software use. In the concluding exercise, learners are asked to describe DevOps, the CALMS acronym, and SDLC under DevOps, and list common test strategies and DevOps testing best practice concepts.
13 videos |
44m
Assessment
Badge
Role of Testing in Managing Clean Code
This 15-video course explores approaches of identifying bad code, designing applications using clean coding principles, and best practices for coding artifacts that meet clean coding standards. Learners begin with a look at the common traits and approaches of identifying code that needs to be cleaned, then learn how to design applications with clean code. Examine coding artifacts and best practices that should be adopted to create artifacts with clean code, and how to write applications that apply clean coding to artifacts such as classes, interfaces, methods, and variable declarations. Explore error handling styles that should be adopted for writing clean code, and manage code errors by adopting clean coding practices. Next, learn about the significance of the united testing F.I.R.S.T principle (Fast, Isolated, Repeatable, Self-validating, and Thorough or Timely), in writing clean tests. View fundamental principles of writing clean code. Also explore the testing strategies for clean code; clean code testing objectives, and writing clean code in Javascript. Learn about the principles of test-driven development (TDD), and finally, how to write code with TDD.
15 videos |
1h 18m
Assessment
Badge
Test Driven Development: Implementing TDD
Begin this 14-video course by exploring the Software Development Life Cycle (SDLC) and the Software Testing Life Cycle (STLC), their features and uses, and SDLC versus STLC. Examine Test Driven Development (TDD), its methodology, and scenarios for using TDD. Also explore Agile Model Driven Development (AMDD); learn to differentiate between TDD and AMDD; and explore AMDD advantages over TDD. Discover how to implement TDD in data science workflows; drawbacks of TDD; and replacement methodologies. Learn how to refactor code, and implement TDD in JUnit using best practices. Also, you will learn about mastering TDD, the drawbacks of TDD, the scenarios for using TDD, and alternative methodologies that can be implemented in place of TDD. Explore using TDD in Java; TDD with Jest testing framework and Node.js; unit testing with TDD in Python; applying the TDD process in microservices; and alternative methodology for TDD. Learn how to implement behavior-driven development (BDD) best practices. Conclude the course by observing how to configure Cucumber framework and use keywords.
14 videos |
1h 2m
Assessment
Badge
Security Software Assessments
In this 13-video course, learners will discover techniques used to perform software security assessments and testing, including components of a security assessment, test strategy approaches, security control and software testing, and the security management process. Key concepts covered in this course include the major components of a security assessment and test strategies approaches; security control review methods including log and code reviews; and how to recognize security control testing mechanisms such as code testing. Next, learn the importance of a security management process and its common functions; learn steps to take to properly test software to ensure that it is secure; and learn methods to detect potential software vulnerabilities. Then learn common software vulnerabilities such as buffer overflow and injection flaws; learn how to avoid common software vulnerabilities by using secure coding techniques; and explore steps and techniques to analyze risk. Finally, learn about penetration testing and its purpose; and learn microservices, a mini-application that focuses on a specific task, and application programming interfaces (APIs) and highlight security concerns associated with each.
13 videos |
55m
Assessment
Badge
End-to-End Testing Implementation
Learners will explore the concept of end-to-end testing, including why it is needed, in this 14-video course, which examines processes involved in end-to-end testing and approaches for creating end-to-end test cases. First, you will take a look at system testing versus end-to-end testing, their advantages and disadvantages, and their differences. Discover how to implement the basics of unit testing, and unit testing with test-driven development (TDD), and browser automation. Learn about automating tests with Selenium and automating tests with Python, and recall the advantages and disadvantages of end-to-end testing. Next, you will delve into Cypress configuration, and the advantages of working with Cypress. Explore how to carry out web component testing with Cypress and relatable use case scenarios, and view continuous integration concepts and continuous integration servers from the perspective of testing. Finally, learners will observe how to implement integration testing with JUnit and Spring, and implement integration testing in a JavaScript framework by using Jest, based on real-life examples.
14 videos |
1h 4m
Assessment
Badge
Implementing Unit Testing Best Practices
Explore prominent unit testing patterns, differences between good and bad unit tests, code-driven unit testing frameworks, and other topics in this 14-video course. Begin with a look at Agile testing, focusing on Agile Testing Quadrants, then move on to prominent unit testing patterns and scenarios. Compare good and bad tests and the goals and approaches of writing good unit tests, and compare prominent code-driven unit testing frameworks that can be used to write unit tests in various programming languages. Discover how to implement the AAA unit testing pattern by using JUnit and TestNB, and the need for Test Double and how Dummy, Fake, stub class, and Mock objects are used to facilitate test replacements. Use Mockito application programming interface (API) to implement unit tests, and configure and write JUnit tests to test RESTful APIs with Mocha and Chai. In addition, unit test web services using SOAP UI, and use DBUnit to test data access objects written for database-driven applications. Explore unit testing using test-driven development (TDD) process, and automated testing with JUnit and Selenium.
14 videos |
1h 20m
Assessment
Badge
Test Automation with TestComplete
Begin this 14-video course with a look at the concept of automation testing, including its process, benefits, and tools. Learners will then move on to TestCompete, and explore its features and the different types of testing it supports. Next, you will examine the TestComplete Object Model and its relevance in automated testing. Delve into name mapping, its uses, and the object identification criteria. Then focus on data-driven testing in TestComplete, as well as TestComplete data storage types and common tasks. You will learn about configuring TestComplete for automation testing; how to use various options and features provided in the TestComplete IDE (integrated development environment); and learn about creating or initializing TestComplete projects. Next, observe how to record test cases for functional testing using TestComplete; implement web testing in TestComplete; and study the objectives of specifics involved in web testing. Conclude the course by discovering how to create checkpoints for testing web applications with TestComplete, and how to test web applications with the use of test suites in TestComplete.
14 videos |
46m
Assessment
Badge
Automated Testing with Docker
This 14-video course explores containerized testing and the benefits of using Docker for testing. Learners will examine the advantages and disadvantages of using Docker to set up architectures for automated testing. Learn how to configure and integrate GitHub repositories with Docker; test automated builds on Docker Hub by executing tests when code is pushed or committed to GitHub, and configure continuous integration testing environments with Docker and Docker Compose. Delve into Dockerization tests and test environments and learn how to integrate them with test reporting tools. Examine test container features and the prerequisites for setting up test containers, and test container patterns-the patterns used for running tests inside Docker containers. Learn how to use Docker test containers in Java tests; implement containerized testing with Docker; and deploy Selenium Grid by running Selenium Hub and separate nodes for Chrome or Firefox. Selenium Grid integration with Docker and running Selenium scripts for testing is also covered.
14 videos |
59m
Assessment
Badge
Building & Implementing Test Automation Frameworks
This 14-video course explores different types of environments for software testing automation by examining key parameters for designing and developing test automation frameworks. Learn about test automation frameworks, their features, advantages and disadvantages, and selecting the right one. Learners will take a look at test automation frameworks that can be implemented by using Selenium WebDriver; build a Selenium Data Driven Framework; implement a Data Driven Automation Framework using TestNG with the @dataProvider annotation; and learn how to implement a Keyword Driven Framework with Selenium WebDriver and Excel Test Suite. You will build a Hybrid Automation Framework using a collection of two or more frameworks; set up Jenkins to run continuous integration/continuous deployment (CI/CD) tests from Maven projects using Selenium WebDriver, and discover how to automate non-web UI with Selenium. Conclude the course by learning about implementing the Docker containerized test automation framework and the Selenium containerized test automation framework, and the best practices for building test automation frameworks in Agile and DevOps.
14 videos |
1h 11m
Assessment
Badge
UFT: Functional Test Automation
In this 14-video course, you will explore functional testing and its objectives, then take a look at unified functional testing (UFT) features and UFT disadvantages associated with it. First, learners examine the UFT testing process, and test workflows that can be used to implement it. Discover various UFT test types; the HP QuickTest Professional (QTP) features and how conducting QTP test automation can help testers execute automated tests, and explore the role of object repository and differentiate between local object repository and shared object repositor. You will delve into recording test steps and using checkpoints; learn how to set, identify, and use text checkpoints when testing web applications; and set and identify standard checkpoints when testing web applications. Learn about setting and using bitmap checkpoints on test components; use regular expressions in UFT and recognize the steps for handling dynamic property values in object repository, and finally, learn how to declare transactions in the identified sections of a test.
14 videos |
1h 1m
Assessment
Badge
Automated Testing with Model-based Testing
Learners can explore the concept, benefits, and challenges of model-based testing (MBT) and the different types of MBT frameworks and tools in this 14-video course. Begin by examining the concept of MBT, along with its associated benefits and challenges. Classify the different types of MBT frameworks, along with different models used in MBT. Examine various MBT techniques used to implement effective quality assurance of software or application systems. View the prominent MBT tools along with their associated features; configure the ModelJUnit framework in development environments to write and execute model-based tests; and learn how to write simple finite state machine or extended state machine models as Java classes. Then generate tests from those models, and measure various model coverage metrics. Learn the steps involved in creating models and testing with ModelJUnit, MoMuT installation and configuring MoMuT. Also learn about configuring OSMO MBT tool and OSMO MBT test generation, OSMO MBT test execution, and OSMO data modelling; graphwalker MBT, model-based testing with Graphwalker and Selenium, MBT workflow, and deploying MBT.
14 videos |
54m
Assessment
Badge
Test Framework Modification
Explore the generations of automated test frameworks, test framework design considerations, best practices, and benefits and risks associated with modifying test frameworks, and other topics, in this 15-video course. Begin by examining the features, advantages and disadvantages of generations of automated test frameworks, then look at popular open-source test automation frameworks with comparative modification granularity. Learn about design considerations for modifying test frameworks to accelerate productivity; best practices for modifying test frameworks to build Agile-friendly test automation frameworks; and benefits and risks of modifying test frameworks. Delve into refactoring techniques, which can be used to refactor code in test automation frameworks; modifying Selenium framework by creating and destroying WebDriver objects using Selenium Core; and modifying Selenium to implement Page Object Patterns by using the Selenium Test class. Learn how to modify the report generation mechanism of testing frameworks by using ExtentReport and Allure; modify the Chai framework; modify Jasmine to adopt behavior-driven development framework; and recall design patterns of test automation frameworks. To conclude, discover WebDriverIO execution and customization.
15 videos |
58m
Assessment
Badge
API Test Automation with SoapUI
In this course, learners explore the features provided by SoapUI, SoapUI and SoapUI NG Pro differences, the concept of assertion, and the concept of test automation in continuous integration. Begin this 14-video course with a look at features of SoapUI and the concept of Web Services Description Language (WSDL). Then compare the differences between SoapUI and SoapUI NG Pro from the perspective of their supporting technologies and features; learn how to configure SoapUI to test REST-based web services; and how to create Test Suites and Test Cases by using SoapUI to test application programming interfaces (APIs). You will observe how to create projects in SoapUI; add WSDL to SoapUI projects; and explore the concept of assertion and assertions available to use in SoapUI. Learn how to create Test Suites in SoapUI projects and add assertions in the Test Suites, and learn the process of creating REST API projects in SoapUI. Examine use of Groovy scripting in SoapUI; integrating SoapUI tests into continuous integration/continuous deployment (CI/CD) process; and observe SoapUI integration with Jenkins.
14 videos |
1h
Assessment
Badge
CI/CD Best Practices: Applying Automated Testing
In this 14-video course, learners explore the DevOps continuous integration/continuous deployment (CI/CD) process and approaches for switching from traditional practices to CI/CD practices. You will learn to recognize risks and challenges associated with CI/CD and approaches for eliminating them. Then delve into CI/CD pipelines and the benefits of implementing automated testing for CI/CD; different CI/CD pipeline architectures that can be set up to implement automated testing; and the CI/CD framework features that can help accelerate continuous integration with Jenkins test automation. Look at CI/CD tools used to build next-gen delivery pipelines; configure Jenkins with the supported tools needed to set up continuous integration from the perspective of test automation, and use Git Hooks to automate development and deployment tasks. Observe how to build CI/CD pipelines; set up architectures of CI/CD pipelines for container automation; and recognize the core technologies and strategies that are used to implement continuous testing and deployment with containers. Finally, learn how to implement continuous testing by using Selenium and Jenkins.
14 videos |
1h 8m
Assessment
Badge
Unit Testing in JavaScript: Mocha & Unit.js
Unit testing on software development paradigms, the support testing provided, and the assertion libraries available in JS (Javascript) are explored in this 15-video course. First, you will learn to use the Node.js environment on your local machine and use the NPM package manager to install Mocha and Unit.js. Learners will then study the functionality of Mocha, and how to build suites of tests. You will also learn how to use Sinon to construct spies, stubs, and mocks, and how it works with Mocha. Continue by learning how to use the Unit.js assertion library to test your code. This course examines the various assertions that Unit.js offers to test simple data types, such as Booleans, numbers, and strings. You will learn how to test more complex data types, including functions and arrays, and to test the objects. You will also learn how to check individual properties of an object by using custom functions as well as regular expressions. Finally, examine unit testing of functions that throw several kinds of errors.
15 videos |
1h 46m
Assessment
Badge
Unit Testing in JavaScript: Should.js & Must.js
This 12-video course explores unit testing on software development paradigms, the support testing provided by JS (JavaScript) and the assertion libraries available in JS. Learners will examine how Unit.js offers extended APIs (application program interface) to communicate between various software components. First, you will learn to use sign-on, which is invaluable in constructing spice, stubs, and mocks in JS. You will learn how to use the Mocha testing framework. This course examines the assertion libraries Should.js and Must.js, which extend the base object.prototype in Javascript, to write assertions for every object by using a very intuitive and easy-to-read style. You will learn to use this assertion libraries to test code by using a chained assertion style. This course examines the fluent style Should.js uses for assertions, and the several helper methods available to chain multiple assertions together. Finally, you will learn to write unit tests to test numbers, strings, truthy and falsy values, objects, arrays, and promises in Javascript.
12 videos |
1h 12m
Assessment
Badge
Unit Testing in JavaScript: Exploring & Configuring the Mocha Testing Framework
Explore how to use JS (Javascript) Mocha, the most popular unit testing framework to run unit tests, in this 13-video course, which examines different hooks that Mocha.js provides to run the test suites. First, learners will examine specific testing environments using the Mocha before and beforeEach hooks. You will then learn how to tear down these test environments, after the completion of the tests, by using the after and afterEach hooks. You will learn how to write tests for asynchronous functions by using the done method, and how to use Async awake keywords. You will learn to use the async/await methods to test asynchronous code that return promises. This course then demonstrates how to set up a simple HTTP server to run Mocha tests in a browser environment. Finally, you will learn how to use the Mocha command line to run multiple tests and how to select a specific test to run by using regular expressions.
13 videos |
1h 9m
Assessment
Badge
Unit Testing in JavaScript: Mocha & Chai
This 12-video course offers a detailed exploration of the Chai assertion framework, an assertion library available in JS (Javascript) to perform unit testing. In this course, you will learn how to install and set up the Chai assertion library on your computer, and learn to use two kinds of application programming interfaces (APIs) that Chai offers for assertions. Learners will examine Chai APIs for both test-driven development and behavior-driven development, and will write unit tests by using the classic API. Learn to use the classic assertion API as well as the Should and Expect API in Chai to test numbers, Booleans, strings, objects and object properties, and arrays. Explore how to use Should to chain multiple assertions together. Then learn how to run tests on simple data types, including Boolean strings and numbers, and on complex data types such as arrays and objects, all using Chai, and examine behavior-driven development by using the Should and Expect APIs. This course compares test-driven development and behavior-driven development. Finally, explore the Expect API.
12 videos |
57m
Assessment
Badge
Unit Testing in JavaScript: SinonJS
Learners can explore the Sinon JS (Javascript) library in this 23-video course. You will learn how to install Sinon library, and will explore the use of fakes, spies, stubs, and mocks in Sinon. Observe how to test code that is part of your application, and replace invocations to other components by using fix. You will learn to create a fake function, and to define the behavior of these functions. Next, you will examine spies, which support all operations that fake support, and allow you to spy on methods that you invoke on objects. Learners continue by examining how stubs can be used to create objects without invoking the objects constructor, and how configuring stub behavior allows us to test specific code paths. You will learn to use fake timers and sandboxes to write unit tests, and how to configure fakes and spies with behavior. Finally, you will learn to set up the expectations for your mocks, and you will control time using fake timers for asynchronous operations which use promises in JS.
23 videos |
2h 28m
Assessment
Badge
Unit Testing in DevOps Software Development
Explore unit testing, the key properties of good unit test programs, and learn how to differentiate between unit testing and integration testing in this 16-video. View key components of unit testing frameworks and how they can help developers write and execute tests, and review test results. Learn best practices for writing productive test cases and anti-patterns that should be avoided. Then examine common unit testing tools for testing Java and JavaScript programs; and write and run unit tests with JsUnit and Qunit. Test server-side JavaScript using Mocha and Chai; learn core testing and refactoring techniques for developing testable and maintainable code; and observe guidelines and techniques for managing bugs in tests. Create test cases and test suites with JUnit; explore testing by using TestNG, and recognize the role of unit testing in test automation and use AAA pattern to derive test cases. Conclude the course by recalling benefits of using test automation frameworks in the software delivery lifecycle, and examining features of popular test automation frameworks that can be used to automate test executions.
16 videos |
1h 22m
Assessment
Badge
Automated Testing: Design Patterns
In this course, you'll explore automated testing and design patterns, as well as API testing tools, and the roles and responsibilities of software designers during the automated testing process. You'll start by examining the importance and benefits of automated testing, and the roles and responsibilities of software developers when performing automated testing. You'll then explore how to effectively use unit tests in automated testing, how automated testing can be used to perform functional testing, and how API testing compares with traditional software testing features. Next, you'll examine the use of design patterns in automated testing, common automated testing design patterns, and tools and frameworks that can be used in API testing. You'll then see how to navigate with Selenium WebDriver and how to construct a Selenium page object for a test case. Lastly, you'll see how to use a Selenium page object to create a unit test and implement automated web testing using Selenium unit tests.
14 videos |
49m
Assessment
Badge
Unit Testing: An Introduction to the JUnit Framework
JUnit, an open-source unit testing framework, can be used by Java developers who employ a test-driven development methodology. The platform allows you to write and run tests on sections of code repeatedly. Use this course as a quick theoretical and hands-on introduction to the JUnit framework. Begin by looking at the process of software testing in general, then unit-testing with JUnit in particular. Next, move on to writing a simple Java app for which you will write JUnit test cases to ensure that its functions behave in line with expectations. Moving along, learn how to use annotations to mark out methods as test cases and set up work to be carried out before test case executions and tasks to be performed after they have run. When you're done, you'll be able to get started writing unit tests for your code using the JUnit framework.
10 videos |
1h 9m
Assessment
Badge
Unit Testing: Assertions & Assumptions in JUnit
Assertions, a collection of utility methods in in JUnit, help assert the pass or fail status of test cases. The focus of this course is on assertions that allow you to set the conditions for the success and failure of test cases and assumptions to control the flow of execution in a test case. Begin with simple assert methods to compare the actual values of fields or return values of methods with their expected values. Then, use assertions that ensure your app's performance by failing a test if it takes too long to run, followed by assert methods that check an exception is thrown when invalid data is passed to a method. Next, use assumptions that check for conditions before executing a code block - effectively serving as control structures. When you're done, you'll have a working knowledge of using assertions in JUnit.
9 videos |
1h 15m
Assessment
Badge
Unit Testing: Advanced Annotations in JUnit
Using annotations in JUnit allows you to add a special form of syntactic meta-data to Java source code for better code readability and structure. The aim of this course is to give you hands-on experience with JUnit annotations which allow you to set when and how test-cases should be run. Kick things off with a basic annotation to set the name of a test case that appears in execution summaries. Move on to using annotations that simplify the setting of conditions in which test cases should run - based on the current operating system, JRE version, and even environment variables. Explore the definition of a custom annotation composed of a combination of pre-built annotations. Then, apply annotations that control the order of test case executions and enable parallel runs of tests. When you're done, you'll be able to use JUnit annotations for several useful tasks.
9 videos |
1h 11m
Assessment
Badge
Unit Testing: Parameterized JUnit Tests
Parameterized tests in JUnit help developers save time by running the same tests repeatedly, using only different inputs, and getting different results. The focus of this course is on scaling test case executions using repeated and parameterized tests. Start by setting a particular test case to run multiple times using the RepeatedTest annotation. Next, move on to defining test cases that can accept parameters. Then, look into different ways in which the parameters can be fed into your test case - from hard-coded values defined in your test class to CSV files and method invocations. Finally, learn how to build a specialized class to pre-process your parameters before being fed into test cases. Upon completion, you'll know how to conduct repeated executions of JUnit test cases with or without parameters.
6 videos |
49m
Assessment
Badge
Unit Testing: Executing JUnit Tests
JUnit, the Java unit testing framework, can be used with an IDE but also with a build system, such as Maven. Furthermore, JUnit ConsoleLauncher, a stand-alone application, can be used to launch the platform from the command line. This course will dive deep into the use of Maven as well as the JUnit ConsoleLauncher to run all and specific test cases in your application. Begin by running all test cases you have written for your app using Maven. Then run specific tests and define groups of tests using JUnit tags. Next, run the tests from the command line. Finally, execute such tests using the JUnit ConsoleLauncher, which can be run from a shell without other tools such as Maven. Upon completing the course, you'll be able to execute JUnit test cases from the command line using Apache Maven and the JUnit ConsoleLauncher.
6 videos |
45m
Assessment
Badge
Unit Testing with Mocks: Getting Started with Mockito
Mockito is a Java framework for building mocks during unit testing. When performing unit tests on an object, you often have other, complex objects that the object under test depends upon. Rather than using those complex objects, you can use Mockito to create mocks of those objects and stub their methods to simulate expected behavior. Use this course to get to grips with mocking and its relationship with unit testing. Set up a Maven project and add the required Mockito and JUnit dependencies. Create mocks of built-in classes, such as the ArrayList, and built-in interfaces, such as the Comparator. Then, work with stub methods using Mockito's when().thenReturn() syntax. When you're done, you'll be able to identify situations where using mocks is a good idea, construct mocks, stub methods in them using Mockito, and use mock objects in unit tests.
15 videos |
1h 59m
Assessment
Badge
Unit Testing with Mocks: Creating Mocks & Verifying Behavior
Mocks built in Mockito do more than just simulate the behavior of complex objects that your object under test depends upon. Mockito makes it easy for you to verify specific aspects of how the object under test and the mock interact. In this course, learn how to build mocks using annotations and use them to perform dependency injection into the object. Then, learn how to work with constructor, setter property, and field injection. Moving along, verify the behavior of the object under test and its interaction with the mock using Mockito constructs, such as verify(), verifyNoInteractions(), and various argument matchers. When you're done, you'll be able to use annotations to construct mocks in a clean and simple manner and test very specific aspects of the interactions between the stubs in your mocks and the object under test.
14 videos |
2h 4m
Assessment
Badge
Unit Testing with Mocks: Mocking Exceptions & Using Spies
Unlike a mock, which has no real state, and in which all behavior must be stubbed, a spy is built atop a real object of the class being mocked and has almost full functionality. Only specific methods of the spy are stubbed, which is useful if it is too complex or cumbersome to mock. Use this course to learn how to identify when spies are a better choice than mocks, how to construct spies and stub specific methods, and how to raise exceptions in stubbed methods of your mocks. Then, use different methods to check how the object under test copes with those exceptions. Moving on, learn how to stub void methods and when to make use of the doNothing().when() syntax. When you're done, you'll be able to correctly use spies, mock exceptions and test their handling, mock void methods, and use argument captors.
12 videos |
1h 40m
Assessment
Badge
SHOW MORE
FREE ACCESS
COURSES INCLUDED
Tester Foundation Level 4.0: Software Testing Basics
This foundational course provides a comprehensive introduction to software testing, covering essential concepts such as test planning, case design, execution, and reporting. Participants will gain practical skills and a solid understanding of the critical role testing plays in the software development life cycle. Begin this course by discovering the strategic aspects of software testing, including how to define clear testing objectives. Then you will learn how to align testing goals with project requirements, fostering an intentional mindset that enhances overall testing efficiency and effectiveness. Next, you will explore advanced topics of software testing, including root cause analysis, classification of anomalies, and the nuances of errors and defects. You will also investigate the limitations and paradoxes of testing and delve into industry best practices to optimize testing processes. Finally, you will focus on verification and validation strategies, ensuring you are well-equipped to deliver high-quality software products.
14 videos |
1h 18m
Assessment
Badge
Tester Foundation Level 4.0: Software Testing Processes
A test process usually consists of a group of activities from planning to completion that may appear to follow a logical sequence but are often implemented iteratively or in parallel. These testing processes are critical for quality assurance. In this course, you will discover the essential phases of software testing, from the initial planning stages to the final execution and completion. Then you will focus on effective test planning, monitoring, and control to gain practical insights into organizing and managing testing activities. By mastering the intricacies of test analysis, design, implementation, execution, and completion, you will develop the skills needed to navigate complexities and maintain control throughout the testing life cycle. Finally, you will explore the broader context of testing, emphasizing the significance of testware, traceability, and the diverse roles within the testing domain. This course helps prepare learners for the ISTQB(r) Certified Tester Foundation Level 4.0 (CTFL) exam.
17 videos |
1h 53m
Assessment
Badge
Tester Foundation Level 4.0: Software Development Testing Life Cycle
Explore the integration of software testing with different development models in this comprehensive course series. Begin this course by investigating incremental and sequential models to gain insights into tailoring testing approaches to specific development methodologies and enhance collaboration between developers and testers. Then you will focus on test-driven, acceptance test-driven, and behavior-driven development. Next, you will dive into the intersection of software testing and DevOps to examine how testing practices seamlessly integrate into continuous integration, continuous deployment, and a shift-left approach. You will gain practical knowledge on incorporating testing into the development pipeline, ensuring quality is maintained throughout the software development life cycle. Finally, you will discover how software testing retrospectives and continuous improvement foster a culture of learning and refinement within the testing process for ongoing excellence. This course helps prepare learners for the ISTQB(r) Certified Tester Foundation Level 4.0 (CTFL) exam.
18 videos |
1h 44m
Assessment
Badge
Tester Foundation Level 4.0: Software Test Types & Maintenance Testing
Software testing comes in many forms and variations depending on what is being tested. You may be testing functionality based on requirements documents, testing usability, or even testing security, and what you are testing will determine the testing methodology used. In this course, learn about different test types, including component testing, component integration testing, system integration testing, and system testing. Next, examine the forms of acceptance testing and the acceptance testing attributes, as well as the differences between functional testing vs. non-functional testing and black-box testing vs. white-box testing. Finally, explore confirmation, regression, and maintenance testing and how to complete performance testing. This course helps prepare learners for the ISTQB(r) Certified Tester Foundation Level 4.0 (CTFL) exam.
20 videos |
2h
Assessment
Badge
Tester Foundation Level 4.0: Static Software Testing
Understanding how to effectively manage and estimate testing efforts, prioritize testing methodologies, and achieve comprehensive test coverage is crucial for success in the real world. In this course, you will navigate through the intricacies of test management and test estimation techniques and learn skills to accurately estimate effort and schedule resources. You will learn prioritization methodologies such as risk-based prioritization, coverage-based prioritization, and requirements-based prioritization. Finally, you will explore the test pyramid model and testing quadrants frameworks for achieving comprehensive test coverage while ensuring efficient testing practices across various levels and types of testing. This course helps prepare learners for the ISTQB(r) Certified Tester Foundation Level 4.0 (CTFL) exam.
20 videos |
2h 3m
Assessment
Badge
Tester Foundation Level 4.0: Software Testing Techniques
Testing techniques like experience-based testing leverage collective insights and intuition to produce unique test scenarios. In this course, you will navigate through the intricacies of test management and test estimation techniques and learn skills to accurately estimate effort and schedule resources. You will learn prioritization methodologies such as risk-based prioritization, coverage-based prioritization, and requirements-based prioritization. Finally, you will explore the test pyramid model and testing quadrants frameworks for achieving comprehensive test coverage while ensuring efficient testing practices across various levels and types of testing. This course helps prepare learners for the ISTQB(r) Certified Tester Foundation Level 4.0 (CTFL) exam.
14 videos |
1h 13m
Assessment
Badge
Tester Foundation Level 4.0: Black-box Testing Techniques
Software testing is a critical component of software development, and without it, software can be riddled with bugs and glitches. This course provides you with a comprehensive understanding of software testing techniques that are essential for ensuring software quality. Learn how to apply various techniques such as equivalence partitioning, boundary value analysis, decision table testing, and state transition testing to derive appropriate test cases from requirements. Explore the importance of usability testing, user interface testing, compatibility testing, and security testing. Next, learn how these testing methods are used to ensure that software is user-friendly, compatible with different systems, and secure from potential threats. This course helps prepare learners for the ISTQB(r) Certified Tester Foundation Level 4.0 (CTFL) exam.
10 videos |
54m
Assessment
Badge
Tester Foundation Level 4.0: White-box Testing Techniques
In this course you will navigate through techniques and intricacies of white-box testing. You'll begin by covering white-box application programming interface (API) testing. You'll then move on to explore white-box statement and branch testing and coverage. Finally, you'll discover the benefits and challenges of performing statement and decision coverage on the source code. This course helps prepare learners for the ISTQB(r) Certified Tester Foundation Level 4.0 (CTFL) exam.
8 videos |
40m
Assessment
Badge
Tester Foundation Level 4.0: Software Test Planning
Understanding the fundamentals of software testing is crucial for ensuring software quality. This course offers a comprehensive understanding of how to create effective test plans and strategies that are essential for ensuring high-quality software. Begin this course by learning how to identify the purpose and content of test plans, define a strategy for creating them, and recognize the role of the software tester in their creation. Next, explore various test strategies and approaches that are used to identify and mitigate potential risks in software development. Finally, learn how to identify appropriate entry and exit criteria for software testing and how to use risk registers to ensure that potential risks are identified and addressed. This course helps prepare learners for the ISTQB(r) Certified Tester Foundation Level 4.0 (CTFL) exam.
10 videos |
56m
Assessment
Badge
Tester Foundation Level 4.0: Software Estimation & Prioritization Techniques
Unlock the secrets of test effort estimation, by leveraging methods for test execution and utilizing the test pyramid model and testing quadrants. In this course, you will navigate through the intricacies of test management and test estimation techniques and learn skills to accurately estimate effort and schedule resources. You will learn prioritization methodologies such as risk-based prioritization, coverage-based prioritization, and requirements-based prioritization. Finally, you will explore the test pyramid model and testing quadrants frameworks for achieving comprehensive test coverage while ensuring efficient testing practices across various levels and types of testing. This course helps prepare learners for the ISTQB(r) Certified Tester Foundation Level 4.0 (CTFL) exam.
15 videos |
1h 27m
Assessment
Badge
Tester Foundation Level 4.0: Test Monitoring & Control
Gain comprehensive insights into the crucial aspects of software testing management and learn about test monitoring, control, and metrics. Learn to strategically oversee the testing process, ensuring project goals are met efficiently. Explore the intricacies of test progress and summary reports and how to effectively communicate test statuses. In this course, you will delve into the governance and maintenance of critical testing components and focus on maintaining test integrity, test item management, and testware management. You will learn to identify and manage test items and testware effectively, ensuring the integrity of the testing process. You will build the skills necessary to recognize, document, and manage these essential elements throughout the software development life cycle, contributing to a robust and well-organized testing environment.
13 videos |
1h 3m
Assessment
Badge
Tester Foundation Level 4.0: Software Testing Risk & Defect Management
Delve into the critical aspects of identifying, assessing, and mitigating risks in the software development process, gaining insight into software development product and project risks. Learn to distinguish between risks associated with the final product and those inherent in the project management domain. By mastering these skills, you will be able to enhance the reliability and integrity of software systems in diverse organizational settings. Begin this course by exploring software development risk management, including both product and project risks. Then you will discover product risk analysis techniques. You will investigate how product risk analysis can be used to influence the scope of software testing and how it is documented. Next, you will take a look at product risk control techniques, mitigation strategies, and the use of monitoring procedures to proactively manage and mitigate identified risks throughout the software development life cycle. Finally, you will examine defect management, including stakeholder involvement, defect report objectives, and crucial elements to include in the report. This course helps prepare learners for the ISTQB(r) Certified Tester Foundation Level 4.0 (CTFL) exam.
15 videos |
1h 17m
Assessment
Badge
Tester Foundation Level 4.0: Software Testing Support Tools
Learn about the tools used to support specific testing activities and gain an understanding of how various tools contribute to enhancing the efficiency and effectiveness of the testing process. In this course, you will learn to create test cases, test data, and test procedures and delve into tools that facilitate automated test execution and coverage measurement. You will gain insights into automated testing processes while ensuring comprehensive coverage. You will discover tools designed for non-functional testing which is a domain difficult or impossible to test manually. Then, explore tools that support the DevOps delivery pipeline, workflow tracking, automated build processes, and continuous integration/continuous delivery (CI/CD). Finally, learn about tools for collaboration, performance measurement, dynamic analysis, and addressing special testing requirements.
15 videos |
1h 24m
Assessment
Badge
Software Testing Foundation 2018: Fundamentals
In this 13-video course, learners explore part of chapter 1 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus, encompassing the fundamentals of testing, its importance, and general testing principles. Learn what software testing is and its overall role in the development process. Examine objectives for any test project and roles played by testing and debugging in software development, and how they differ. Learn benefits of performing software testing and how it can lead to a successful product. Look at the relationship between testing and quality assurance and their role in developing higher quality products. Learn about software problems, what errors, defects, and failures are and distinguish between them, their root causes, and effects. Review the seven testing principles: 1 and 2, on the presence of defects and the reality of exhaustive testing; 3 and 4, on early testing and defect clustering; 5 and 6, on the pesticide paradox and context dependency; and 7, the error absence fallacy. The concluding exercise deals with major reasons for testing and its importance in software development.
13 videos |
35m
Assessment
Badge
Software Testing Foundation 2018: Test Process Fundamentals
Continue exploring chapter 1 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus in this 16-video course, encompassing the fundamentals of testing relating to the test process and the psychology of testing. First, learners examine how context affects the test process, then the main groups of test activities that make up that process. Explore activities associated with test planning, monitoring, and control phases, and the test analysis and design phases. Also, the test implementation, execution, and completion phases of the process. You will explore various test work products created as part of the test process, including planning, monitoring, analysis, and design work products, test implementation products, and execution and completion products. Next, learn the importance of establishing and maintaining traceability between elements of the test basis and work products throughout the test process; the psychological factors influencing test success; effective communication skills needed between testers and managers; and how to differentiate between the mindset required for both testers and developers. An exercise on various phases of the test process concludes this course.
16 videos |
45m
Assessment
Badge
Software Testing Foundation 2018: Testing & the Software Development Lifecycle
In this 13-video course, explore part of chapter 2 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus on testing and its relevance to the Software Development Lifecycle. Begin by looking at relationships between development and test activities in the sequential development model and in the incremental and iterative development model. Learners will begin to understand the importance of selecting the software development lifecycle model based on the project and product context, and learn good testing characteristics applicable to any lifecycle model. Then examine different test levels in software development and the various attributes that characterize each level. Learn the various attributes associated with component integration testing, system integration testing, and system testing, including objectives, test basis, and objects, defects and failures, approaches and responsibilities. Look at various forms of acceptance testing, including user, operational, contractual, and regulatory, as well as alpha and beta testing, and various attributes, including objectives, test basis, and objects, defects, and failures, approaches, and responsibilities. A concluding exercise assesses knowledge of development models and test levels.
13 videos |
44m
Assessment
Badge
Software Testing Foundation 2018: Test Types & Maintenance Testing
Learners explore the remainder of chapter 3 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus in this 11-video course, which covers static testing and related review process, types, and techniques. Begin by examining the purpose of performing functional testing and look at characteristics evaluated by functional testing. This leads into nonfunctional testing, its purpose, and the characteristics it evaluates. Delve into the purpose of performing white-box testing and identify the characteristics that this testing evaluates. Then move into change-related testing: the purposes of performing both confirmation and regression testing, as well as characteristics each test type evaluates. Take a look at test types and test levels, and see that any of the test types may be performed at any test level. Examine the purpose and objectives of performing maintenance testing, its scope considerations, and the reasons that may trigger the need for performing maintenance testing. Finally, examine the role played by impact analysis in maintenance testing. A concluding exercise covers types of tests and maintenance testing.
11 videos |
30m
Assessment
Badge
Software Testing Foundation 2018: Static Testing
In this 18-video course, explore the remainder of chapter 3 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus, which covers static testing and related review process, types, and techniques. Begin by looking at the static testing techniques available and work products that can be examined with static testing. Examine various benefits provided by performing static testing in the software development lifecycle. Learn how to perform a review on source code and requirements specification. Understand the differences between static and dynamic testing techniques in respect to objectives, types of defects, and roles of the techniques used. Learners will examine the work product review process and responsibilities for roles associated with a formal review. You will identify attributes associated with various reviews: informal, walkthrough, technical, and inspection reviews. Then view the various individual review techniques for ad hoc, checklist-based, scenario-based, role-based, and perspective-based review types. Next, examine the organizational factors that can help provide a successful review outcome. A final exercise reviews static testing.
18 videos |
51m
Assessment
Badge
Software Testing Foundation 2018: Testing Techniques
In this 10-video course, you will explore part of chapter 4 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus, covering categories of test techniques, with a primary focus on experience-based test techniques. Start by learning how to identify the factors that influence which test technique to use. The purpose of a test technique is to help identify test conditions, test cases, and test data. Then learners will examine black-box, white-box, and experience-based test techniques and their characteristics. Explore what each of those experience-based testing techniques are, and identify their common characteristics, by focusing on error guessing, exploratory testing, and checklist-based testing and the benefits they provide when testing a software product. In the final tutorial of this course, look at exploratory testing, performing tests on software based on the tester's unique domain-based experience. To conclude the course, an exercise covers describing various testing techniques available in the experience-based testing category.
10 videos |
30m
Assessment
Badge
Software Testing Foundation 2018: Black-box & White-box Testing Techniques
Explore part of chapter 4 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus covering categories of test techniques, focusing on white-box and black-box testing techniques. One of these is equivalence partitioning, applied to derive appropriate test cases from requirements. In this 17-video course, learn to define test cases by applying equivalence partitioning. Examine boundary value analysis to develop appropriate test cases and define these by applying boundary value analysis, given a set of requirements. You will learn about decision-table testing to derive and define test cases from requirements and when to apply state transition testing, to derive appropriate test cases from requirements and define test cases by applying it. Identify the process involved in deriving test cases from a use case, and define test cases when given a specific use case and statement testing and coverage. Next, explore how to achieve statement coverage, identify decision testing and coverage, and achieve decision coverage in software source code. Then examine benefits of white-box testing. A final exercise deals with black-box and white-box testing techniques.
17 videos |
55m
Assessment
Badge
Software Testing Foundation 2018: Test Management
In this 16-video course. explore part of chapter 5 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus, which covers test management, including test organization, planning, and estimating. Begin with the fundamentals of independent testing, including the benefits and weaknesses associated with test independence. You will learn how to identify the roles of the test manager and tester in the testing process. Then look at test plan documentation, its purpose, and its content. Learn about test planning activities, various test strategies, and identify the test approach and how it differs from test strategy. Explore how to choose the appropriate entry and exit criteria for software testing. Then examine the test execution schedule, the order in which test suites are executed. Recognize the factors that affect the test effort and common techniques employed in the estimation of test-related effort. In the closing exercise, learners will describe how tests are organized, documented, and estimated.
16 videos |
50m
Assessment
Badge
Software Testing Foundation 2018: Test Monitoring & Control
During this 13-video course, learners will explore part of chapter 5 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus, which covers test monitoring and control and configuration management. Begin by looking at the purpose of test monitoring and how it is applied to control the test process effectively. You will then consider the test metrics collected during testing activities, in order to make some type of assessment and the purpose and content of test reports and how they are tailored to audiences. This leads to looking at test progress and test summary reports. Learners then explore why configuration management is so important to the integrity of the testing process and how test item management is conducted as part of that process. Examine how testware is controlled and managed to ensure the integrity of the testing process, and learn how to identify testware and test items that are associated with testing a component or system. The concluding exercise focuses on the test monitor and control process.
13 videos |
32m
Assessment
Badge
Software Testing Foundation 2018: Risk & Defect Management
In this 10-video course, you will explore part of chapter 5 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus, which focuses on risk and defect management. Learners will recognize how the likelihood and impact of a negative event defines the risk level. Examine the risk associated with a work product-the possibility that a specific work product, for example, a system or test, may fail to satisfy legitimate requirements of its users and/or stakeholders. Also, project risks, which involve situations that if they were to occur, may have a negative impact on a project's ability to achieve its objectives. Explore product risk analysis, and how its results may influence the testing process. Learners examine risk-based testing, used to reduce the levels of product risk; the defect management rationale; how defects found during testing are logged; and objectives of defect reporting. Finally, explore contents of defect reports. In the concluding exercise, you will describe how risk and defect management are used to manage a test project effectively.
10 videos |
25m
Assessment
Badge
Software Testing Foundation 2018: Test Tool Support
In this 17-video course, explore part of chapter 6 from the ISTQB Software Testing Foundation Level 2018 certification exam syllabus, which focuses on test tool concepts, including considerations, classifications, test automation, and effective use. First, take an overview of the tools used to support testing activities. Next, learners look at the classifications of test tools and understanding their purpose. Then you will examine various tools for specific tasks: managing tests and testware; static testing; test design and implementation; test execution and logging; performance measurement and dynamic analysis; and tools for special testing requirements. Learn about benefits of test automation and its associated risks, and examine the special considerations associated with test execution tools and test management tools. Next, explore the main principles of test tool selection, study objectives for using pilot projects to introduce new test tools, and take a look at the success factors related to evaluating, implementing, deploying, and supporting test tools. To conclude the course, an exercise involves identifying and classifying test tools and their effective use.
17 videos |
55m
Assessment
Badge
Navigating Software Testing Tools: Types of Software Testing Tools
There are several types of software testing tools for testing different aspects of web applications, including web service, REST application programming interface (API), load, and relational database testing. In this 14-video course, learners can explore types of tools along with examples of popular tools. Begin with an overview of software testing tools for testing web applications, web services, system load, and databases. Observe the Selenium test automation tool and its advantages, and learn about web testing with Selenium. Next, take a look at Katalon Studio and the available web, API, and mobile testing modules, then learn how to record and play back a web test with Katalon Studio. Then discover how to create an API test using Katalon Studio. Learners will explore the SoapUI test tool, its features and benefits, and learn how to perform REST API testing by using SOAPUI. Delve into load testing and tools available to perform it, and how to perform load, stress, and endurance testing with NeoLoad. Learn about relational database testing, and conclude by choosing unit testing tools.
14 videos |
55m
Assessment
Badge
Testing throughout the Software Life Cycle
Software testing is a crucial part of software development. Examine testing objectives, principles and processes, the psychology and ethics of testing, and different development models in a software life cycle.
14 videos |
53m
Assessment
Badge
Testing Methods
The goal of software testing is to ensure that the software is reliable and does the job it was designed to do. Explore the different test levels and test types in a software life cycle you can use to help achieve that goal.
10 videos |
39m
Assessment
Badge
Static, Dynamic, Black-box, & White-box Testing
To perform the best possible testing of your software, you must select the proper testing technique. Examine how to choose a testing technique from the many available: static, dynamic, black-box, white-box, and experience-based.
20 videos |
1h 46m
Assessment
Badge
Test Planning & Management
The testing process can be complex, so it is vital to have a good plan in place to control it. Examine how to organize, plan, and manage testing, and look at risk-based testing and risk management.
12 videos |
58m
Assessment
Badge
Testing Tool Support
Fortunately, not all software testing has to be performed manually. Discover how testing activities can be supported by tools and considerations for using tools in your organization.
11 videos |
50m
Assessment
Badge
Debugging Concepts
Debugging is a necessary part of the software development process since there's no such thing as perfect code. Explore the basic concepts of debugging, including why debug, and the types of problems and bugs you may expect to find.
14 videos |
1h 5m
Assessment
Badge
Debugging Tools & Best Practices
Debugging can be time-consuming; however, it is a necessary part of the software development process. Explore some debugging tools available to help you, as well as best practices to follow when debugging.
11 videos |
49m
Assessment
Badge
Introduction to Debugging
Software debugging is a fact of life, but Visual Studio and its various tools make the process a bit easier. Learn the debugging capabilities, and various methods for debugging with Visual Studio 2013.
16 videos |
1h 9m
Assessment
Badge
Debugging Environments & Dumps
Visual Studio is a powerful development environment, and a large part of that power comes from its debugging capabilities. Explore the debugging environments in Visual Studio 2013, and how to generate and work with dumps.
11 videos |
34m
Badge
Debugging Tools
Debugging is a necessary part of the development process, but there are numerous tools available to the developer. Explore various debugging tools, including Performance Monitor, PerfView, and DebugDiag.
15 videos |
50m
Assessment
Badge
Visual Studio Online & Debugging Tips
In larger companies, the debugging process is often performed by a team rather than an individual. Learn how to use Visual Studio Online as a team tool for debugging your code.
10 videos |
33m
Assessment
Badge
Software Debugging in Windows
Most software developers will, at some point, develop applications for Microsoft Windows. Examine software debugging in Windows, including Windows debugging tools, Windows memory manager issues, and resource issues.
17 videos |
1h 8m
Assessment
Badge
Debugging in Windows 8
Debugging is a necessary part of the software development cycle. Learn about the debugging tools in Microsoft Windows 8 and how they can help you improve the quality of your code.
6 videos |
28m
Assessment
Badge
Social Media Usage Trends & App Risks
With the huge growth in social media, it is vital that you test your applications for both security and usability. Explore trends in social media use, and risks and challenges associated with social media apps.
11 videos |
28m
Assessment
Badge
Social Media App Development Trends & Mobility Testing
Testing your social media apps is important to ensure users have a secure and seamless experience. Explore trends in social media app development, and look at mobility testing criteria.
12 videos |
29m
Assessment
Badge
Introducing API Fundamentals & Testing: Understanding APIs
Application programming interfaces (APIs) are crucial connectors enabling software systems to communicate. They establish rules for requesting and exchanging data, promoting efficient integration and standardized communication between applications. APIs are used in all kinds of applications, from finance and banking to the Internet of things (IoT). Begin this course by discovering how APIs allow you to integrate software systems, increase security, and standardize messages. Next, you will explore the different types of APIs, including Representational State Transfer (REST), simple object access protocol (SOAP), Graph Query Language (GraphQL), and Google Remote Procedure Call (gRPC). Finally, you will examine RESTful architecture in more detail and focus on best practices of API design and the importance of API versioning.
11 videos |
1h 34m
Assessment
Badge
Introducing API Fundamentals & Testing: Working with RESTful APIs
When working with application programming interfaces (APIs), two popular tools are cURL and Swagger. cURL, a command-line utility, empowers direct HTTP requests from the terminal, while Swagger offers an interactive interface for exploring APIs, simplifying request and response inspection. Both enhance your API interaction capabilities. Begin this course by discovering common representational state transfer (REST) APIs that use JSON data. You will view the different types of data available and analyze the URLs of these APIs. Then you will use the Inspect feature of Chrome DevTools and the Swagger UI to view network requests. Next, you will learn how to use the client for URL (cURL) utility and place GET requests using cURL. You will work with POST requests to add new resources, use PUT and PATCH requests to completely and partially update resources, respectively, and use DELETE requests to remove resources. Finally, you will authenticate yourself with GitHub and explore GitHub API real-world use cases.
15 videos |
1h
Assessment
Badge
Fundamentals of Apache Maven for Java Developers
Apache Maven is a comprehensive project management and build automation tool primarily used for Java projects, facilitating dependency management, project build standardization, and plugin integration. It emphasizes a convention-over-configuration approach, streamlining the development process by adhering to predefined project structures and configurations for efficient and consistent builds. In this course, you will be introduced to Apache Maven. You will first install Apache Maven on both Windows and macOS. Through hands-on activities, you will learn to set up your first Maven project, understand its directory layout, and appreciate the significance of the pom.xml file in project configuration. Next, you will explore the core aspects of Maven, including compiling and running projects, utilizing the .m2 local Maven cache, and embracing Maven's "convention over configuration" philosophy. You will configure your projects using the pom.xml, explore project documentation through site generation, and ensure your builds are compatible and consistent by specifying encodings and JDK versions. Finally, you will tackle the intricacies of managing project dependencies. This includes understanding and implementing dependency versions and scopes, as well as resolving conflicts between multiple versions of the same dependency.
15 videos |
2h 11m
Assessment
Badge
Advanced Topics in Apache Maven for Java Developers
Mastering the Apache Maven build lifecycle, along with its phases, plugins, and goals, allows developers to automate and optimize the build process. Multimodule and bill of materials (BOM) projects are advanced topics that enable complex project structures to be managed more effectively, facilitating better organization, dependency management, and ensuring consistency across different modules of a project. In this course, you will learn to navigate the intricacies of Maven repositories and configure specific remote repositories to access artifacts. You will override the default directory layout and set up Project Object Model (POM) inheritance to leverage shared configurations, minimize redundancy, and promote project uniformity. Next, you will explore the Apache Maven build lifecycle, gaining hands-on experience with executing phases and employing plugins to tailor the build process. You will configure plugins and associate them with lifecycle phases to enhance your capacity to automate and refine your build operations. Finally, you will set the stage for advanced project management by configuring profiles for environment-specific builds and building a multimodule project to manage multiple interrelated projects easily. You will also create and use a BOM for streamlined dependency management.
16 videos |
2h 24m
Assessment
Badge
SHOW MORE
FREE ACCESS
COURSES INCLUDED
Creating Test Plans
Streamline the software development and testing process with Visual Studio. Discover how to create a new test plan, and manage, configure, and define the configurations of your test plan and settings.
15 videos |
51m
Badge
Test Suites & Configurations
Visual Studio supports the needs of not only the software developer, but also the software testers. Examine how you can use Visual Studio to create, clone, manage, and configure test suites.
11 videos |
42m
Badge
Managing Test Cases
Using Visual Studio in the software testing process can be a benefit to both the developers and the testers. Explore how to create test cases and test steps, and how to parameterize in order to manage your test cases.
14 videos |
53m
Badge
Shared Steps & Requirements
Visual Studio is a useful tool when working with test cases during software testing. Discover how to create and manage shared test steps, and manage test requirements and coverage.
7 videos |
31m
Badge
Managing Test Execution
Effective software testing is integral to mitigating harm caused by software failures. Discover how you can use Visual Studio to manage your test execution process, and manage, analyze, track, and verify bug metrics and reports.
19 videos |
1h 13m
Badge
Test Environments & Reports
Software failures can be costly in terms of money, time, and business reputation. Discover how to create environments and run test cases within the Lab Center, perform analysis, and manage work items.
19 videos |
1h
Assessment
Badge
SHOW MORE
FREE ACCESS
EARN A DIGITAL BADGE WHEN YOU COMPLETE THESE COURSES
Skillsoft is providing you the opportunity to earn a digital badge upon successful completion on some of our courses, which can be shared on any social network or business platform.
Digital badges are yours to keep, forever.BOOKS INCLUDED
Book
Software Testing: A Self-Teaching IntroductionThis overview of software testing in a "self-teaching" format contains easy-to- understand chapters with tips and insights about software testing, its basic concepts, applications, and practical case studies.
8h 19m
By Rajiv Chopra
Book
Analytic Methods in Systems and Software TestingA comprehensive treatment of systems and software testing using state of the art methods and tools, this book uses numerous examples to provide an understanding in applying these methods to real-world problems.
10h 59m
By Fabrizio Ruggeri, Frederick W. Faltin, Ron S. Kenett
Book
Software Testing Automation Tips: 50 Things Automation Engineers Should KnowOffering advice and best practices on the most frequently faced issues in automated software testing, this book provides a number of tips that point to approaches that save time and increase the accuracy and reliability of automated test techniques.
1h 4m
By Gennadiy Alpaev
Book
Software Testing: Concepts and OperationsOffering an examination of the principles, concepts, and processes that are fundamental to the software testing function, this book covers all phases of the software testing lifecycle, including test data generation, test oracle design, test driver design, and test outcome analysis.
6h 3m
By Ali Mili, Fairouz Tchier
Book
Guide to Advanced Software Testing, Second EditionTaking professionals on a complete tour of this increasingly important, multi-dimensional area, this heavily illustrated book offers a practical understanding of all the most critical software testing topics and their relationships and inter-dependencies.
7h 24m
By Anne Mette Hass
Book
Software Testing Foundations: A Study Guide for the Certified Tester Exam, 4th EditionTeaching the most important methods of software testing, this book is designed for self-study and provides the information necessary to pass the Certified Tester-Foundations Level exam, version 2011, as defined by the ISTQB.
5h 4m
By Andreas Spillner, Hans Schaefer, Tilo Linz
Book
The Art of Software Testing, Third EditionWhether you're a student looking for a testing guide you'll use for the rest of your career, or an IT manager overseeing a software development team, this landmark book provides a brief but powerful and comprehensive presentation of time-proven software testing approaches.
3h 46m
By Corey Sandler, Glenford J. Myers, Tom Badgett
SHOW MORE
FREE ACCESS
BOOKS INCLUDED
Book
Software Testing: A Self-Teaching IntroductionThis overview of software testing in a "self-teaching" format contains easy-to- understand chapters with tips and insights about software testing, its basic concepts, applications, and practical case studies.
8h 19m
By Rajiv Chopra
Book
Analytic Methods in Systems and Software TestingA comprehensive treatment of systems and software testing using state of the art methods and tools, this book uses numerous examples to provide an understanding in applying these methods to real-world problems.
10h 59m
By Fabrizio Ruggeri, Frederick W. Faltin, Ron S. Kenett
Book
Software Reading Techniques: Twenty Techniques for More Effective Software Review and InspectionFor software professionals, software engineering students and researchers, this book teaches software reading techniques to enhance your effectiveness in reviewing and inspecting software artifacts such as requirements specifications, designs, code files, and usability.
2h 49m
By Yang-Ming Zhu
Book
The Art of Software Testing, Third EditionWhether you're a student looking for a testing guide you'll use for the rest of your career, or an IT manager overseeing a software development team, this landmark book provides a brief but powerful and comprehensive presentation of time-proven software testing approaches.
3h 46m
By Corey Sandler, Glenford J. Myers, Tom Badgett
Book
Model-Based Testing Essentials: Guide to the ISTQB Certified Model-Based Tester: Foundation LevelCovering the essentials of Model-Based Testing (MBT) needed to pass the ISTQB(r) Foundation Level Model-Based Tester Certification, this book explains the specifics of MBT test implementation, the dependencies on modeling and test generation activities, and the steps required to automate the generated test cases.
4h 31m
By Anne Kramer, Bruno Legeard
Book
Software Testing: Concepts and OperationsOffering an examination of the principles, concepts, and processes that are fundamental to the software testing function, this book covers all phases of the software testing lifecycle, including test data generation, test oracle design, test driver design, and test outcome analysis.
6h 3m
By Ali Mili, Fairouz Tchier
SHOW MORE
FREE ACCESS
BOOKS INCLUDED
Book
Software Testing: A Self-Teaching IntroductionThis overview of software testing in a "self-teaching" format contains easy-to- understand chapters with tips and insights about software testing, its basic concepts, applications, and practical case studies.
8h 19m
By Rajiv Chopra
Book
Guide to Advanced Software Testing, Second EditionTaking professionals on a complete tour of this increasingly important, multi-dimensional area, this heavily illustrated book offers a practical understanding of all the most critical software testing topics and their relationships and inter-dependencies.
7h 24m
By Anne Mette Hass
Book
Advanced Software Testing: Guide to the ISTQB Advanced Certification as an Advanced Test Manager, Volume 2, Second EditionTeaching test managers what they need to know to achieve advanced skills in test estimation, test planning, test monitoring, and test control, this hands-on, exercise-rich book provides experience with planning, scheduling, and tracking these tasks.
9h 26m
By Rex Black
Book
Advanced Software Testing: Guide to the ISTQB Advanced Certification as an Advanced Technical Test, Volume 3, Second EditionWith a hands-on, exercise-rich approach, this book teaches you how to define and carry out the tasks required to implement a test strategy.
7h 36m
By Jamie L. Mitchell, Rex Black
Book
Advanced Software Testing: Guide to the ISTQB Advanced Certification as an Advanced Test Analyst, Volume 1, Second EditionWritten for the test analyst who wants to achieve advanced skills in test analysis, design, and execution, this book uses a hands-on, exercise-rich approach to teach you how to define and carry out the tasks required to put a test strategy into action.
5h 10m
By Rex Black
Book
The Software Test Engineer's Handbook: A Study Guide for the ISTQB Test Analyst and Technical Test Analyst Advanced Level Certificates 2012, 2nd EditionWith enough real-world examples to keep you intellectually invested, this book brings both functional and technical aspects of testing into a coherent whole, which should benefit not only test analysts but also test managers.
9h 7m
By Graham Bath, Judy McKay
Book
Software Testing Foundations: A Study Guide for the Certified Tester Exam, 4th EditionTeaching the most important methods of software testing, this book is designed for self-study and provides the information necessary to pass the Certified Tester-Foundations Level exam, version 2011, as defined by the ISTQB.
5h 4m
By Andreas Spillner, Hans Schaefer, Tilo Linz
SHOW MORE
FREE ACCESS
AUDIOBOOKS INCLUDED
Audiobook
Effective Software Testing: A developer's guideEffective Software Testing is a hands-on guide to creating bug-free software. Written for developers, it guides you through all the different types of testing, from single units up to entire components.
10h 26m 22s
By Maurício Aniche
SKILL BENCHMARKS INCLUDED
Java Unit Testing Competency (Intermediate Level)
The Java Unit Testing Competency benchmark evaluates your skills to write and run JUnit tests and identify the right situation to construct and use mock objects. You will be assessed on your ability to use assertions and annotations in JUnit and execute tests in Apache Maven and JUnit ConsoleLauncher. A learner who scores high on this benchmark demonstrates that they have the skills to write and run JUnit tests and also perform unit testing with mocks.
15m
| 15 questions
JavaScript Unit Testing Literacy (Beginner Level)
The JavaScript Unit Testing Literacy benchmark measures your ability to recognize the Mocha testing framework and the Unit.js assertion library. You will be evaluated on your skills in writing unit tests to test numeric values, strings, objects, arrays, truthy and falsy values, functions, promises, and exceptions using Unit.js. A learner who scores high on this benchmark demonstrates that they have the skills to test different types of objects using Unit.js and the Mocha framework, and can unit test JavaScript code intuitively using chained assertions in Should.js and Must.js.
18m
| 18 questions
JavaScript Unit Testing Competency (Intermediate Level)
The JavaScript Unit Testing Competency benchmark will assess your ability to recognize the different features available in Mocha, such as before/after hooks, asynchronous operations using promises and async/await, the configuration of Mocha reporters, and running Mocha in the browser. You will be evaluated on your skills in using the classic Assert API and the Expect/Should API to test numbers, booleans, strings, objects and object properties, and arrays in Chai. You will also be measured on your knowledge of using fakes, spies, stubs, and mocks in Sinon and using fake timers and sandboxes to write unit tests. A learner who scores high on this benchmark demonstrates that they have skills to work with the different Mocha features, Chai assertion libraries, and Sinon.
30m
| 30 questions
SKILL BENCHMARKS INCLUDED
Software Testing Foundation 2018: Software Testing Foundation Awareness (Entry Level)
The Software Testing Foundation Awareness benchmark measures your knowledge and understanding of testing fundamentals, such as the importance of testing and general testing principles. You will be evaluated on your skills in understanding why software testing is necessary, the test process, the psychology of testing, as well as the seven principles of testing. A learner who scores high on this benchmark demonstrates that they have the skills to recognize the fundamentals of software testing.
10m
| 10 questions
Software Testing Foundation 2018: Software Testing Foundation Literacy (Beginner Level)
The Software Testing Foundation Literacy benchmark measures your knowledge of the fundamentals of software testing, including the general test process, testing work products, and the psychology of testing. You will be evaluated on your skills in recognizing testing as it relates to the software development lifecycle, including lifecycle models and test levels. A learner who scores high on this benchmark demonstrates that they have the skills to recognize the various test types and maintenance testing in the software testing process.
25m
| 25 questions
Software Testing Foundation 2018: Software Testing Foundation Competency (Intermediate Level)
The Software Testing Foundation Competency benchmark measures your knowledge of the fundamentals of static testing, the static testing review process, related review types, and general categories of testing techniques such as experience-based testing. You will be evaluated on your skills in recognizing the white box and black box testing techniques and the aspects of test management related to testing organization, test planning, and test estimating. A learner who scores high on this benchmark demonstrates that they have the skills to implement the various test techniques and perform test management.
30m
| 30 questions
Software Testing Foundation 2018: Software Testing Foundation Proficiency (Advanced Level)
The Software Testing Foundation Proficiency benchmark measures your knowledge of aspects of test management such as test monitoring, control, configuration management, risk management, and defect management. You will be evaluated on your skills and recognition of test tools, considerations, classifications, and effective use, as well as the benefits and risks of test automation. A learner who scores high on this benchmark demonstrates that they have the skills to recognize various aspects of test management and the pros and cons of test tools.
28m
| 28 questions
Apache Maven for Java Developers Literacy (Beginner Level)
The Apache Maven for Java Developers Literacy (Beginner Level) benchmark evaluates your knowledge of the core aspects of Maven, such as compiling and running projects, utilizing the local Maven cache, configuring projects using pom.xml, generating project documentation, and ensuring builds are compatible and consistent by specifying encodings and JDK versions. You will be assessed on your understanding and implementation of dependency versions and scopes, as well as your ability to resolve conflicts between multiple versions of the same dependency. Learners scoring high on this benchmark demonstrate the skills necessary to configure a Maven project and recognize how Maven dependency management works.
12m
| 12 questions
Apache Maven for Java Developers Competency (Intermediate Level)
The Apache Maven for Java Developers Competency (Intermediate Level) benchmark assesses your knowledge of navigating Maven repositories, configuring remote repositories, overriding directory layout, and setting up Project Object Model (POM) inheritance. You will be evaluated on your knowledge of the Maven build life cycle, executing phases, employing plugins to tailor the build process, configuring plugins and associating them with life cycle phases, creating profiles for environment-specific builds, building a multimodule project, and using a bill of materials (BOM) for streamlined dependency management. Learners scoring high on this benchmark demonstrate the skills necessary to leverage Apache Maven for sophisticated project management and build automation using repositories, profiles, multimodule projects, and BOM projects.
12m
| 12 questions
Software Testing Foundation (CTFL 4.0) Awareness (Entry Level)
The Software Testing Foundation (CTFL 4.0) Awareness (Entry Level) benchmark evaluates your knowledge of the importance of software testing and general software testing principles. You will be assessed on your understanding of verification and validation strategies, ensuring you are well-equipped to deliver high-quality software products. Learners scoring high on this benchmark demonstrate the recognition of the role of testing in the software development life cycle.
10m
| 10 questions
Software Testing Foundation (CTFL 4.0) Literacy (Beginner Level)
The Software Testing Foundation (CTFL 4.0) Literacy (Beginner Level) benchmark evaluates your knowledge of the phases of software testing, the various factors that can affect software testing, testing roles, and the output of work products. You will be assessed on your skills in recognizing testing within the software development life cycle, including life cycle models and test levels, as well as maintenance testing and the various test types in the software testing process. Learners scoring high on this benchmark demonstrate the necessary recognition of the software testing processes, software testing life cycle, maintenance testing, and software test types.
30m
| 30 questions
Software Testing Foundation (CTFL 4.0) Competency (Intermediate Level)
The Software Testing Foundation (CTFL 4.0) Competency (Intermediate Level) benchmark measures your recognition of the fundamentals and review process of static testing, related review types and techniques, and the categories of testing and experience-based testing techniques. You will be assessed on your knowledge of black-box testing methods, white-box testing techniques, and the benefits and challenges of statement and decision coverage on source code. Learners scoring high on this benchmark demonstrate their recognition of the different types of testing, such as static software testing, software testing techniques, and black-box and white-box testing techniques.
30m
| 30 questions
Software Testing Foundation (CTFL 4.0) Proficiency (Advanced Level)
The Software Testing Foundation (CTFL 4.0) Proficiency (Advanced Level) benchmark evaluates your knowledge of test planning, software tester roles, software testing strategies, and entry and exit criteria. You will be assessed on your recognition of methods for test execution and scheduling and how to utilize the test pyramid model and testing quadrants. Learners scoring high on this benchmark demonstrate an understanding and working knowledge of software test plans and software estimation and prioritization techniques.
20m
| 20 questions
Software Testing Foundation (CTFL 4.0) Mastery (Expert Level)
The Software Testing Foundation (CTFL 4.0) Mastery (Expert Level) benchmark evaluates your knowledge of aspects of test management related to test monitoring and control, as well as configuration, risk, and defect management. You will be assessed on your understanding of support test tools, recognition of test tool considerations, classifications, and effective use, and the benefits and risks of test automation. Learners scoring high on this benchmark demonstrate an understanding of test management concepts such as test monitoring and control, software testing risk and defect management, and software testing support tools.
30m
| 30 questions
SHOW MORE
FREE ACCESS