coded ui tests - Automated GUI testing of real-world desktop and/or web applications -


this not question, rather discussion best practices automated gui testing in real-world applications (where real-world aplications applications have more 2 forms , 3 buttons , complexity goes beyond calculating 2 numbers , displaying result in texbox).

i searched web hands-on experience in automated gui testing of real-world applications. of articles presented limited examples (i.e. testing simple calculator-style application) not useful jump-starting automated gui testing on application 100k+ loc.

when implementing automated gui testing not want make beginner mistakes, i'm asking you:

  • what practices when automated gui testing?
  • what tools use , why?
  • how handle complex execution paths?
  • ...

to more concrete, let me describe situation in more details: have 100k+ loc project written in c#. it's windows application , interacts hardware (various measurement units via different communication protocols). have unit test "general" features (libraries, etc.) - features independent , can tested in isolation. due limitations of using real hardware cannot test in automated way (investment high) - automate @ least half work our testers doing manually. "transform" of our testers manage automated ui tests. our testers have limited programming skills, best workflow our case either record ui tests or use simplified programming approach. future maintenance of ui tests should done testers (in contrast of unit tests maintenance done programmers).

  • the application uses sqlite database storing configuration , data.
  • the tests must run against different sets of test data. how / store data?
  • when using more 1 set of test data, "safe" state must achieved before using next set of test data - state 100% sure, application ok. prefer restarting application or programmatically revert changes have made test? example of logging in - login every test or login once , several test in row?
  • all tests should run on @ different windows os platforms (win7/win8, x86/x64) in mixed environment (virtual , physical).
  • how run ui tests components? make simple test programs , ui testing using program? or maybe else?

what practices when automated gui testing?

  • record page
  • auto generate methods can update page easily

avoid ever can. i'm looking @ unit testing mvc. build way of updating pages. tools use , why?

  1. specflow - workflow testing
  2. t4 - generating methods pages
  3. selenium - cross browser testing
  4. cuite - extending coded ui tests , recording

how handle complex execution paths?

  1. with architecture pattern such mvc
  2. model: page mapping of ui controls
  3. view(navigation): how navigate page , meet pre conditions , triggers
  4. controller : test method calls navigation , model

follow questions :

  • how going maintain these coded ui test?
  • who's going maintain these tests?
  • please elaborate on "safe state", type, thread?
  • how going handle page loading?
  • are going cross browser testing?
  • are going test in multiple environments?
  • are going test multiple test agents?
  • how going generate test data?
  • how going store test data?
  • have got unit tests?
  • are doing manual tests?

Comments

Popular posts from this blog

android - MPAndroidChart - How to add Annotations or images to the chart -

javascript - Add class to another page attribute using URL id - Jquery -

firefox - Where is 'webgl.osmesalib' parameter? -