Agile Testing Expertise

At Strategic Business Decisions we bring strong capabilities and expertise in testing. Following is an overview of types of testing that we perform:

  • Testing Scenarios: Defining testing scenarios is key to testing activity. Scenarios vary in complexity. A scenario covers a business issue. For example, a scenario can “customer purchases an offer online”. To evaluate if this is a suitable scenario, ask the following question: Does the scenario cover a business issue being addressed? Is it easy to evaluate the outcome of the scenario? Is it clear when a purchase has taken place? Can we discern who the customer persona making the purchase is? Can we verify that the online purchase has taken place? A test scenario generally covers a number of test cases. From a testing perspective, test scenarios are developed based on functional and business requirements provided by the Engineering and Business stakeholders. The test team will work with Program Managers to define and document end-to-end testing scenarios.
  • Test Cases: Each test case is made up of one or more testing steps or testing activities.
  • Test environment: The testing environment consists of core platform software, portal software, database servers, API, networks, systems and applications, client operating system, browsers, and hardware, etc. Testers execute the test cases on this environment. In many large organizations the testing often happens on a production environment with test headers. Test headers manage the flow of information and prevent leakage to financial reporting systems or other business critical systems. Some of the testing may also take place in test or preprod environments that must seamlessly integrate with the production environment during the testing phase. Whitelisting is used to allow the application being tested to communicate with other prod environments. At times, unforeseen delays due to test environment readiness, whitelisting, test flights, etc. may impact or impede testing progress.
  • Component Testing: Each component or module in an application separately to ensure that the component is working as expected on it’s own prior to conducting integration tests.
  • Functional Testing: Functional testing ensures that the software’s inputs and outputs conform with the requirements specified in the functional requirements document.
  • System testing: A System is made of components and modules that may include a software platform, client operating system, and other tools and components. System testing verifies the interaction between the various components that constitute the system with a focus on identifying interface defects. System tests are used to fully integrate apps and ensure effective interaction between components. End to end testing scenarios are used to thoroughly test that inputs in the app are tested for the desired outputs.
  • End to End Testing: End-to-end testing determines if the flow of information in an application works from beginning to the end. end-to-end testing reveals system dependencies and ensures that information integrity between systems and applications is maintained. The complete application is tested for critical functionalities such as communicating with the other systems, interfaces, database, network, and other applications.
  • Sampling: Testing can be based on a sampling of variables or based on testing ever possible combination of inputs, events and outputs.
  • Customer/user’s experience with the application is tested during system testing.
  • User Acceptance Testing (UAT) or end-user testing is generally the last phase of the software testing process. It’s intended to ensure that the software/portals can perform the required tasks according to approved functional specifications. UAT sign-off is required prior to software being generally available and rolled out to the market.User Acceptance Testing determines if the software meets the specifications laid out in the requirements and complies with the business needs and can be delivered to the end users free of defects. The acceptance test cases are executed with test data and outcomes are compared against expected outcomes. The acceptance criteria include functional completeness, data integrity, user experience, security, and readiness. User acceptance tests are implemented in phases. The initial stage covers the happy path and if the initial scenarios pass, then the test team will execute more complex test cases. Delays is development of software can delay or compress the UAT period.
  • Testing design: testing design involves understanding the testing and verification scenarios, developing test cases, designing test methods, defining testing pre-requisites, defining test steps, linking test cases to functional scenarios, deploy test tracking artifacts (for example Visual Studio) for tracking each test case and updated test status.
  • Testing Reporting: The project is kept on track with timely reports to monitor the results of testing through test execution dashboard (including pie charts, burndown chart, actual versus planned chart, etc.), bugs filed, bugs fixed, email reports to stakeholders, deploy key performance indicators and metrics to monitor and report on the progress of operations verification efforts and comparison between project and compared to historical efforts; communications to project teams and senior management, dashboard maintenance, timely execution communications for executive stakeholders; status update communications (email, Shiproom, walking deck, and inform all organizational stakeholders on testing)
  • Test Results: Test outcomes are always documented. During test execution, the actual outcome is compared with the expected outcome and defects or deviations are filed as a bug. Based on the test outcome the test case can pass or fail. A test case includes test steps and the expected outcome for each test step. Test results are recorded as screenshots, and detailed defect logs, capturing detailed information to reduce debugging time. Deploy, update and manage SharePoint site Documentation Library; master project implementation plan; maintain test change management logs; conduct daily reporting and weekly project audits to ensure operations verifications efforts are running efficiently, effectively and on-plan; Utilize appropriate project execution tools; organize, document, and preserve all key operations verification activities (VSO, SharePoint, Excel, Power BI and other tools) per PMO Leader requirements; 
  • Resource Management: Project resources are onboarded and trained to act as SME on specific project topics under their domain. Project resources will need some onboarding to gain mastery of the apps being developed and the features being released. Project resources are responsible to meet key testing milestones, provide weekly updates to Program Management Office on progress being made. Teams provide updates on test scenario execution, update test execution logs, capture and document step-by-step test execution activities and identify and document risks and issue logs. The test resources along with the program management office identify mitigation solutions. Test resources must maintain detailed and high quality documentation at all time. It’s key that test resources build positive trustful relationships with all stakeholders.
  • Testing Communications: Daily and weekly status communications to various stakeholders including project stakeholders, development teams, business stakeholders and other key stakeholders as needed. The role of the program manager is to respond to ad hoc requests if needed and identify opportunities for improvement.  
  • Testing plan: Test plans include the test objectives, testing scope and test schedule plus resources required for carrying out the testing.
  • Acceptance Test Report: daily and weekly test reports include summary of test results, defects identified, variations from expected results, recommendations for path forward and approval decision criteria.
  • Agile Testing: In Agile Testing, testing takes place continuously and on an ongoing basis. All teams have responsibility for testing. Ongoing testing provides ongoing feedback about the software and its functionality. As opposed to conventional methods of, in Agile, testing is done while software implementation is underway.

Strategic Business Decisions Consulting

Copyright 2019 Strategic Business Decisions Consulting.

Business Insights for High Performing Organizations™ and Light-Bulb-Flash logo are registered as trademarks of Strategic Business Decisions Consulting.

A woman owned business in the State of Washington.

%d bloggers like this: