fbpx
Toggle navigation
Free form Testing

Manual testing is the process of performing a set of manual actions on a system expecting a certain output. When the expected output is not obtained, the result of the test is a failure and a defect is raised for the developer to rectify the same.

  • It is the most basic level of testing. Any system needs to be manually tested before being automated.
  • Tests like User Experience testing which are qualitative cannot be automated.
  • Manual testing is easy, inexpensive and simple to plan and execute.
  • Manual testing is preferred often whenever a system undergoes continuous changes.
  • Maintenance of manual systems is much easier compared to automation systems.
  • Every other testing method can only complement the manual method of testing, and can’t replace it.

We at BitCot thus give utmost priority to manual testing and believe that each system needs to be manually tested thoroughly at least once before being automated.

Free form Testing

Free-form testing is the process of having a system tested without any pre-defined test plan or test cases written. Tests are planned in an ad hoc manner, probably in hours and results are to be shared within one or two days.

Why Free form Testing

  • Timeline for product delivery is limited.
  • Where manual or automation tests do not seem to yield any new defects.
  • The product/module in question does not seem critical enough.

Risks

  • Risk of ignoring one or more important tests since timeline is limited.
  • Test cases might not be thoroughly reviewed.

With all said, free-form testing is preferred for small applications, crunched timelines and minor changes to a system and when performed by an experienced tester, it is quite useful and effective.

Quality Assurance Services in San Diego

The waterfall method of testing has often lead to major losses to organizations mainly because it is inflexible, the scope of testing is limited and it does not make the best use of the available time among members. In this context, the Agile methodology of software testing does everything that waterfall method does, and more. The Agile method ensures that all the software processes are reversible and iterative.

What is Agile Quality Assurance Automation Process?

  • Divide a project into small independent modules.
  • Classify requirements for each and develop each module.
  • Once development of a module is done, start developing the next independent module while the first is tested by testing team.
  • Repeat Steps 1 to 3 till all the modules of the project are developed.
  • Whenever any issues arise, immediately go back to Step 2 or 3 and change the requirements or re-develop the module and execute step 3.

We at Bitcot follow only the Agile methodology of software development and testing.

Agile Quality Assurance Automation for Software Testing

  • How?
    Testing is done in sprints. The time duration of each sprint is decided by the scrum master or the test manager as per the project needs.
  • What?
    In each sprint, a certain module or set of modules are taken for testing by the testing team, executed and defects are fixed by the Dev team.
  • Why?
    Testing is done in sprints. The time duration of each sprint is decided by the scrum master or the test manager as per the project needs.

Agile Software Development Testing Process

Test Sign Off

Requirements Analysis

  • Testing team checks the requirements framed by the business team.
  • Requests for any logical clarifications required.
  • Done only before the sprint begins.

Note

Steps 1 to 5 are iteratively repeated for each sprint and are individually signed off.At the end, all the processes are cumulatively signed off, for the entire project.

Test Sign Off

Test Planning

  • Testing team decides the test scenarios and cases that are to be executed during the sprint.
  • Done before or after the commencement of a sprint.

Note

Steps 1 to 5 are iteratively repeated for each sprint and are individually signed off.At the end, all the processes are cumulatively signed off, for the entire project.

Test Sign Off

Test Case Review

  • Test Cases are reviewed internally by the test manager.
  • Also reviewed externally by Dev/Business team.
  • Test cases are actually executed only after both reviews are passed.

Note

Steps 1 to 5 are iteratively repeated for each sprint and are individually signed off.At the end, all the processes are cumulatively signed off, for the entire project.

Test Sign Off

Test Execution

  • The approved test scripts are executed.
  • Execution results are documented and reported on a periodic basis.
  • Test cases that are failed are mapped to defects using any appropriate defect tracking tool.
  • When the defects are fixed, the testing team is expected to retest and close those issues that are fixed.

Note

Steps 1 to 5 are iteratively repeated for each sprint and are individually signed off.At the end, all the processes are cumulatively signed off, for the entire project.

Test Sign Off

Test Sign Off

  • The testing is deemed as completed when the defects are resolved and the testing team provides the sign off for the module in focus.

Note

Steps 1 to 5 are iteratively repeated for each sprint and are individually signed off.At the end, all the processes are cumulatively signed off, for the entire project.

Why Automate?

Every software development group tests its products, yet delivered software always has defects. Test engineers strive to catch them before the product is released but they always creep in and they often reappear, even with the best manual testing processes. Automated software testing is the best way to increase the effectiveness, efficiency, and coverage of your software testing.

Manual software testing is performed by a human sitting in front of a computer carefully going through application screens, trying various usage and input combinations, comparing the results to the expected behavior and recording their observations. Manual tests are repeated often during development cycles for source code changes and other situations like multiple operating environments and hardware configurations.

An automated testing tool is able to playback pre-recorded and predefined actions, compare the results to the expected behavior and report the success or failure of these manual tests to a test engineer. Once automated tests are created they can easily be repeated and they can be extended to perform tasks impossible with manual testing. Because of this, savvy managers have found that automated software testing is an essential component of successful development projects.

Automation Process Flow

Lifecycle of Automation Process Followed in TSU

Update the Code

Periodically monitor the changes to the source code and update the code to be consistent with the code.

Writing Automation Scripts

Running and Monitoring Logs

The automated scripts are to be run periodically and their logs need to be monitored for any issues detected. Issues need to be logged when there is a deviation from the expected result

Update the Code

Periodically monitor the changes to the source code and update the code to be consistent with the code.

Automation Tools Used

Automation Tools Used – Selenium

  • Selenium is a web testing tool which uses JavaScript and iframes to embed the test automation engine into the browser.
  • Supports many programming languages Java, Ruby, C# and Python.
  • It allows the same test scripts to be used to test multiple browsers on multiple platforms.
  • Since it is an , there are no Licensing costs associated with it.

Continous Integration Using Saucelabs and App Thwack

  • The recent improvements in automation field has meant that the automation scripts need to be continuously integrated to cloud and available to clients for execution.
  • This has been made possible by several cloud based automation services such as SauceLabs.
  • SauceLabs enable the users to run their Selenium scripts on the cloud by accessing the script on a Virtual Machine and simulate running scripts on multiple browsers and versions at once.
  • SauceLabs provide reports with metadata and console logs while executing the scripts for the user to be able to accurately identify the cause of any issues found.
  • AppThwack helps the users to run the Appium scripts on multiple real remote devices.
  • This helps the code to be executed by a user only by specifying the desired platform name, version name and device name and validating the successful run of scripts including device logs.

Why Choose BitCot as your Software Testing Services in San Diego?

Collective automation experience spanning thousands of man hours.

 

Code modularization and optimization to achieve the most efficient test process.

Use of powerful tools such as Selenium, Calabash and Appium for Web and Mobile automation.

cripts can be run on cloud using SauceLabs and execution results are available for clients for monitoring.

Why BitCot?

Our custom software development team has extensive experience in developing web applications. We develop engaging enterprise quality applications for both startups and industry leading companies, spanning IOT, Healthcare, Insurance, AI, Entertainment. We specialize in using ROR, PHP, Angular, ReactJS, Bootstrap CSS, LESS, to create the most robust and intuitive user interfaces, while at the same time architecting cloud based solutions that have proven to be much easier to manage.

design-image

Website Design & Development

mobile-app

Mobile App Development

qa-image

Quality Assurance (QA)

Free project quote

Fill out the enquiry form and we'll get back to you as soon as possible.

Contact Us: 858-683-3692

    Dave S

    Co-Founder- StompSessions

    Quote

    I have Known BitCot for 4 years and have been impressed with the diversity and quality of BitCot work. With that solid foundation it was really easy to select BitCot as our development partner.

    Quote