Unit 5 - Automation and Testing -Test Review 2021
Framework Selection
After you decide which tests to automate, next you will also need to decide which of the following, you will use: Appium, Espresso, XCUI/Test and Quantum (this list is a sample, not considered to be complete) you will use.
Unit Testing
In computer programming, this is a software testing method by which individual units of source code—sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures—are tested to determine whether they are fit for use.
Platform Consideration
Next, this is where you decide which platform(s) you will execute your tests against. This is where you decide whether you will use Simulators & Emulators or real devices. Best practice is to use both.
Accessibility Testing
Testing to determine the ease by which users with disabilities (such as vision impairment, hearing disabilities, and other physical or cognitive conditions) can use a component or system.
Security Testing
Testing to determine the security of the software product.; such as sensitive information and data remains safe.
Compatibility Testing
Testing to ensure that your mobile app works across different devices, OSes, and generations.
Usability/UX Testing
Testing to measure how user friendly and intuitive your app is. This testing can reveal problems, which impact the end user experience.
AWS CloudFormation, Puppet, Kubernetes and Terraform
These are a few of the tools that are used to automate building and managing cloud environments.
Appium, Selendroid, Espresso and Robotium
These are a few of the tools that are used to automate the testing of a web or mobile application.
Coverage, Progress and Quality
These are the three categories that most software testing metrics fall into.
Functional testing (back-end)
This a testing method that checks the server side or database of web applications or a software. This testing is also known as Database Testing. The database may be SQL Server, MySQL, Oracle, DB2, and etc.
Virtuoso
This has become the go-to platform for next-generation test automation and a leader in the use of AI/Machine Learning in testing. This product uses Robotic Process Automation to test web and mobile web applications securely in the cloud.
Quality
This is a Software Testing Metric that has meaningful measures of testing product quality. Usability, performance, scalability, overall customer satisfaction, and defects reported , are a few examples.
Coverage
This is a Software Testing Metric that has meaningful parameters for measuring test scope and success.
Progress
This is a Software Testing Metric that parameters help identify test progress to be matched, against success criteria. These metrics are collected iteratively over time. They can be used to graph the process itself (e.g., time to fix defects, time to test, etc.)
Black Box Testing
This is a method of software testing that examines the functionality of an application without peering into its internal structures or workings. This method of test can be applied virtually to every level of software testing.
TestComplete
This is a powerful and easy-to-use functional test automation tool from SmartBear. It can automate tests across desktop, mobile, and web applications.
Selendroid
This is a test automation framework which drives off the UI of Android native and hybrid applications and the mobile web.
IAC
This is a type of IT infrastructure that operation terms can automatically manage and provision through code, rather than using a manual process.
Functional testing (front-end)
This is a type of testing that checks the Presentation layer of a 3 Tier Architecture. In layman's term, you are checking the GUI - anything that is visible on screen, client -side. For a web application, this testing would involve checking functionalities like forms, graphs, menus, reports, and etc.
Robotium
This is an open-source test framework for writing automatic gray-box testing cases for Android applications. With the support of this framework, test case developers can write function, system and acceptance test scenarios, spanning multiple Android activities.
Selenium
This is an open-source web automation tool and currently the most popular and widely used tool in the market. It can automate across multiple OS Like Windows, Mac, and Linux and browsers like Firefox, Chrome, IE, as well as Headless Browsers.
Strategic Automation
This is considered the first step in your app testing checklist, this is where your decide whether the tests will be manual, automatic, or both
Integration Testing
This is the phase in software testing in which individual software modules are combined and tested as a group. This testing is conducted to evaluate the compliance of a system or component with specified functional requirements. It occurs after unit testing and before validation testing.
Oses
This term reference the operation systems, in mobile devices, such as tablets and smartphones, that provide a GUI and can run applications. Common mobile operating system, include Android, iOS and Windows Phone.
Lambda Test
This test has turned out to be the most favored Cross Browser Testing platform. Users can perform automated web testing using its scalable, secure, and reliable cloud based Selenium grid on a combination of 2000+ real browsers and browser versions to maximize your test coverage.
Functional Testing
This testing activity, is considered basic testing, that ensures that all the features of your app work as they should.
Gray Box Testing (also spelled as grey box testing)
This testing approach is focus on rectifying the loopholes and inefficiencies found in white box and black box testing. It has been developed to be a productive mix of the two testing techniques.
Performance Testing
This testing ensures that your app performs, as it should in different circumstances.
White Box Testing
also known as clear, glass box or structural testing; is a testing technique which evaluates the code and the internal structure of a program.
Xcode
an Apple tool that allows developers to write and test new apps
Quantum
is a BDD testing framework. It can be used for both mobile and web testing. You don't need to know code to write test scripts with this framework. You can create automated tests in plain language.
Puppet
is a Configuration Management tool that is used for deploying, configuring and managing servers. This Configuration Management tool uses a Master Slave architecture in which the Master and Slave communicate through a secure encrypted channel with the help of SSL.
XCUI/Test
is a mobile test automation framework for iOS. This is iOS-specific, which is entirely developed and maintained by Apple. The framework is embedded into the XCode IDE which also makes scripting fast.
AWS CloudFormation
is a service that gives developers and businesses an easy way to create a collection of related AWS resources and provision them in an orderly and predictable fashion.
IDE
is an abbreviation for Integrated Development Environment; which enables programmers to consolidate the different aspects of writing a computer program.
Expresso
is an automation framework for Android apps. This framework testing focuses on Android-specific UI and the framework is very developer friendly. In addition, the framework is embedded into the Android IDE, which makes it easy to get started with.
Kubernetes
is an open-source container-orchestration system for automating computer application deployment, scaling, and management. It was originally designed by Google and is now maintained by the Cloud Native Computing Foundation.
Terraform
is an open-source infrastructure as code software tool created by HashiCorp. Users define and provide data center infrastructure using a declarative configuration language known as HashiCorp Configuration Language, or optionally JSON.
Appium
is the leading framework for mobile app testing automation. It works on both Android and iOS apps. You can test mobile native, web, and hybrid app tests with this framework.