Software Engineering Training Courses

Software Engineering Training Courses

Local, instructor-led live Software Engineering training courses demonstrate through interactive discussion and hands-on practice the fundamentals of Software Engineering.

Software Engineering training is available as "onsite live training" or "remote live training". Onsite live Software Engineering training can be carried out locally on customer premises in South Africa or in NobleProg corporate training centers in South Africa. Remote live training is carried out by way of an interactive, remote desktop.

NobleProg -- Your Local Training Provider

Testimonials

★★★★★
★★★★★

Software Engineering Course Outlines

Title
Duration
Overview
Title
Duration
Overview
14 hours
Overview
In this instructor-led, live training in South Africa, participants will learn how to enhance an automated test suite using advanced techniques to drive Selenium.

By the end of this training, participants will be able to:

- Resolve complex web application test automation issues with Selenium.
- Apply regular expressions and pattern-based verification techniques.
- Handle exceptions that halt test execution.
- Perform SQL calls to verify data.
- Programmatically search for web objects.
- Dynamically capture data from web controls.
- Create a data-driven testing framework.
- Distribute testing with Selenium Grid.
21 hours
Overview
In this instructor-led, live training in South Africa, participants will learn how to use PyTest to write short, maintainable tests that are elegant, expressive and readable.

By the end of this training, participants will be able to:

- Write readable and maintainable tests without the need for boilerplate code.
- Use the fixture model to write small tests.
- Scale tests up to complex functional testing for applications, packages, and libraries.
- Understand and apply PyTest features such as hooks, assert rewriting and plug-ins.
- Reduce test times by running tests in parallel and across multiple processors.
- Run tests in a continuous integration environment, together with other utilities such as tox, mock, coverage, unittest, doctest and Selenium.
- Use Python to test non-Python applications.
21 hours
Overview
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
14 hours
Overview
This instructor-led, live training in South Africa 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.
7 hours
Overview
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
21 hours
Overview
ScalaCheck is a library for carrying out automated, property-based testing for Scala or Java programs. Inspired by the Haskell library QuickCheck, it uses properties to describe the expected behavior of an application, generating random input data at first, then testing this data across different areas of the application and reporting the result.

In this instructor-led, live training, participants will learn the benefits of and concepts behind property-based testing as they practice writing properties that lead to the automatic generation of test cases.

By the end of this training, participants will be able to:

- Write general properties that replace and/or compliment hand-written unit test cases
- Write tests at the higher level of property specifications
- Execute ScalaCheck as a standalone executabl, using the built-in command line test runner
- Integrate ScalaCheck with test frameworks such as ScalaTest, specs2 and LambdaTest

Audience

- Test engineers
- Developers

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice
7 hours
Overview
This one-day course walks participants through the fundamentals of RSpec, BDD (Behavior Driven Development) and other testing methods with hands-on exercises.
7 hours
Overview
In this instructor-led, live training in South Africa, participants will learn how to write a set of test cases and a test suite, then execute the tests on a demo application.

By the end of this training, participants will be able to:

- Use Robot Framework's keyword-driven testing approach and tabular test data syntax to write and execute tests. Use consistent syntax to compose new keywords from existing ones.
- Carry out Gherkin-style Behavior Driven Development (BDD) tests (similar to Cucumber).
- Generate and interpret Report and Logs to troubleshoot failures in the tested application.
- Extended Robot Framework's capabilities using third-party libraries written in Python, Java, Perl, Javascript and PHP.
- Integrate Robot Framework with Selenium for testing web applications.
7 hours
Overview
In this instructor-led, live training in South Africa, participants learn how to use Rest Assured 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.
7 hours
Overview
Property Based Testing is an automated testing approach 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.

QuickCheck (or QuickCheck2, QC2) is a Haskell-based library for random testing of program properties. It takes the specification of a program -- the properties that a function should satisfy -- and tests that those properties hold in many randomly generated cases.

In this instructor-led, live training, participants will learn how to write the specifications of a program in the form of properties, then provide them as input to QuickCheck for automatic generation of test cases.

By the end of this training, participants will be able to:

- Write general properties that replace and/or compliment hand-written unit test cases
- Write tests at the higher level of property specifications
- Set up a testing environment and integrate QuickCheck into an end-to-end deployment processes

Audience

- Software test engineers
- Developers

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice
14 hours
Overview
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.
35 hours
Overview
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
14 hours
Overview
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
14 hours
Overview
In this instructor-led, live training in South Africa, 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.
- running Protractor with or without Selenium to drive browser behavior.
7 hours
Overview
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
14 hours
Overview
This instructor-led, live training in South Africa teaches participants how to write testable code in the form of testing units to facilitate the diagnosis, isolation, and resolution of bugs. The training walks participants through the creation of a work-ready, testing environment using the PHPUnit testing framework.

By the end of this training, participants will be able to:

- Distinguish between good and bad testing units.
- Read and interpret test results.
- Proactively manage and diagnose their code base to reduce bugs.
- Ensure that their code base is fit for continuous integration and deployment.
21 hours
Overview
The course is designed for experienced programmers who want to explore issues related to the use of patterns and refactoring. Each participant know the properties and practical examples of the use of these patterns, which in turn will enable the efficient build correct the application code.
7 hours
Overview
PhantomJS is a web browser without a graphical user interface. It supports DOM handling, CSS selector, JSON, Canvas, and SVG. PhantomJS provides a Javascript API to make it "WebKit scriptable".

In this instructor-led, live training, participants will learn how to write PhantomJS scripts to test web applications, automatically capture screenshots, monitor network traffic, and check the results of unit testing.

By the end of this training, participants will be able to:

- Run headless web tests with frameworks such as Jasmine, QUnit, Mocha, Capybara and Selenium
- Programmatically capture web contents, including SVG and Canvas
- Create website screenshots with thumbnail preview
- Access and manipulate web pages through DOM API or jQuery
- Monitor page loading and export as standard HAR files
- Automate performance analysis using YSlow and Jenkins

Audience

- Software test engineers

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice
35 hours
Overview
Audience

- Performance Testers
- Performance Engineers
- Developers who wants to grow their career as Performance Architects.

Format of the course

50% lectures, 50% labs
28 hours
Overview
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
7 hours
Overview
In this instructor-led, live training, participants will learn how to set up and use OpenNMT to carry out translation of various sample data sets. The course starts with an overview of neural networks as they apply to machine translation. Participants will carry out live exercises throughout the course to demonstrate their understanding of the concepts learned and get feedback from the instructor.

By the end of this training, participants will have the knowledge and practice needed to implement a live OpenNMT solution.

Source and target language samples will be pre-arranged per the audience's requirements.

Format of the course

- Part lecture, part discussion, heavy hands-on practice
14 hours
Overview
Objective:

Helping Technical Analysts and Designers to understand how to go through software implementation of the requirements, ensuring traceability between business specifications and the software code.

This 2 day training course aims at assisting technical analysts and designers in designing specifications described by the business analysts. After transformation into software component representations, the resulting system components trace system requirements toward software component structures.

Finally, these technical specifications are implemented in software code and tested upon component basis. The resulting software components provide good level of reactivity to changes as they allow to trace separately toward the implementation level the system behaviours layer by layer (from the user interfaces toward business objects layer through the application components where the usage choices of the actors are stored.
14 hours
Overview
Microservice architecture is an approach to developing a software application as a suite of small, independent services, each running in its own process and communicating with lightweight mechanisms such as an HTTP resource API. These services can be efficiently deployed using continuous automation systems and bypass the need for centralized management. Microservices can be written in different programming languages and integrate with different data storage systems.

This instructor-led, live training is aimed at enterprise developers and architects. It introduces microservice architecture from a .Net perspective, presents migration strategies from a monolithic system, and walks participants through the creation and deployment of a sample microservice-based application.

By the end of this training, participants will be able to:

- Understand when to use and when not to use microservice architecture
- Create and implement a testing strategy for microservices
- Deploy a sample microservice-based application into a production environment
- Refactor a monolithic application into services

Audience

- Developers
- Architects

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice
35 hours
Overview
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.
14 hours
Overview
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
14 hours
Overview
In this instructor-led, live training, participants will learn how to enhance an automated test suite using advanced techniques to drive Selenium.

By the end of this training, participants will be able to:

- Resolve complex web application test automation issues with Selenium
- Apply regular expressions and pattern-based verification techniques
- Handle exceptions that halt test execution
- Perform SQL calls to verify data
- Programmatically search for web objects
- Dynamically capture data from web controls
- Create a data-driven testing framework
- Distribute testing with Selenium Grid

Audience

- Software testers
- Test Managers
- Quality assurance professionals
21 hours
Overview
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
21 hours
Overview
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.
14 hours
Overview
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.
14 hours
Overview
Unit testing is a testing approach that tests individual units of source code by modifying its properties or triggering an event to confirm whether the outcome is as expected.

In this instructor-led, live training, participants will learn how to write and execute unit tests against a sample .Net application using C# and Visual Studio.

By the end of this training, participants will be able to:

- Use testing frameworks such as NUnit and xUnit.net to create and manage unit test code
- Define and implement a broader test driven development approach to testing
- Adapt the testing framework to extend the test coverage for an application

Audience

- Software test engineers
- Developers

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice
Weekend Software Engineering courses, Evening Software Engineering training, Software Engineering boot camp, Software Engineering instructor-led, Weekend Software Engineering training, Evening Software Engineering courses, Software Engineering coaching, Software Engineering instructor, Software Engineering trainer, Software Engineering training courses, Software Engineering classes, Software Engineering on-site, Software Engineering private courses, Software Engineering one on one training

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

is growing fast!

We are looking to expand our presence in South Africa!

As a Business Development Manager you will:

  • expand business in South Africa
  • recruit local talent (sales, agents, trainers, consultants)
  • recruit local trainers and consultants

We offer:

  • Artificial Intelligence and Big Data systems to support your local operation
  • high-tech automation
  • continuously upgraded course catalogue and content
  • good fun in international team

If you are interested in running a high-tech, high-quality training and consulting business.

Apply now!