Migrating CodedUI Test to Robotframework for Testing Sharepoint 2019 Websolution

just one sample migrating ATDD Test from Coded UI to Robotframework.

Before Test Structure:

CodedUI Unit Test Structure

Comparison Unit Test & ATDD Test Structure:

Structure Comparison C# and Python with Selenium API

Reason for Migration from CodedUI to Robotframework:

  1. CodedUI is now deprecated.
  2. Test Tools and Ways of testing didn’t fullfill the requirement for doing ATDD test (E2E test) scopes.
  3. Long test run .
  4. Needs of proper test logging
  5. Test run should be independance from SW build.
  6. Only IE as browser is supported.

Proposed Robotframework ATDD Structure:

Robotframework ATDD Structure

Project / Test & Development enviroment Limitation:

  1. Test Object: Sharepoint 2019 customisation
  2. OS used for test object and testing: Microsoft Windows 10 OS
  3. Build and test requrement tools: Microsoft TFS
  4. Diffrent targets and build environment for: Development, Integration and Preproduction.

Needed Infrastukture and Software for Testing with Robotframework:

  1. Python 3.x
  2. Robotframework
  3. Robotframework SeleniumLibrary
  4. Robotframework Whitelibrary
  5. Test editor Notepad ++ with Robotframework plugin
  6. Test should be able to run as Selenium Hub trigger from MS TFS which consuming Robotframework xUnit reports as test run results.

Benefit of using Robotframework:

  1. Test run faster than CodedUI
  2. Test cases are written as Keyword Driven test, instead of Unit Test, these speed up the test cases creation and migration also simplify reusable of test cases.
  3. No need using Visual Studio for creating test sases, you can use simple text editor r write tests.
  4. Test results are more understandable for non-technical team members ( Test Manager, Project Manager, Environment Team, Solution Team)
  5. Using RF Tag functionally and RF Report (Rebot) custom report can be created without any additional effort,
  6. Report implementations of build on TFS over Xunit report flag on Robot runner.
  7. Tests can run independently outside build tool.

Starting the MIgration Steps:

  1. Separating & creating all needed sharepoint UI keywords in UI Keyword resources.
  2. Separating & creating all needed sharepoint 2019 application workflow as Keyword resources.
  3. Creating template of sharepoint masterpage sites mapping as keyword resources.
  4. Defining needed static and dynamic variables regarding to TCs and target test enviroment as variable resources
  5. Creating RF runner files as batchfile for each target deployment enviroment (development, integration, or regresion)
  6. Creating test suites regarding requirement (sanity test, fuctional test or regresion test)
  7. Creating folder structure to map sharepoint functional requirement implementation
  8. Creating folder structure for test reports, test suites and test runner.
  9. Tagging related test suites regarding requirement coverage

Reports & Logs:

Leave a Reply