Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cleanup acceptance tests #2091

Closed
8 tasks done
jussimalinen opened this issue Aug 6, 2015 · 2 comments
Closed
8 tasks done

Cleanup acceptance tests #2091

jussimalinen opened this issue Aug 6, 2015 · 2 comments

Comments

@jussimalinen
Copy link
Member

The Robot Framework's own acceptance need some cleanup. Different platforms and requirements are handled sometimes by tags, sometimes by setting test non critical. The names for these tags are inconsistent as well. Also the keyword names are not written in consistent style. There is probably much more... It would be great to clean this stuff up along with the Python 3.0 support.

  • Change pybot, jybot, and x-fails-on-ipy tags to no-jython, only-jython, no-ipy etc
  • Get rid of regression tag if possible
  • If possible, change the non critical tests to be critical and just don't run them on a platform where they don't work
  • Add tags require-lxml, require-docutils, require-yaml, and screenshot and make all of these tests to be always critical.
  • Add no-ci tag or similar, which would skip manual and telnet tests (all other could then be critical on ci?)
  • Keyword names should be written in consistent style
  • Cleanup and streamline the test running system and atest/run_atest.py in general. Perhaps rename it to atest/run.py.
  • Update atets/README.rst.
@jussimalinen jussimalinen added this to the 3.0 milestone Aug 6, 2015
pekkaklarck added a commit that referenced this issue Sep 11, 2015
Includes:
- Remove pybot/jybot tags. Use only-jython, no-jython, etc. instead.
- Do not set IronPython, Python 2.6, Windows, etc. tests
  non-critical when they cannot pass. Use no-ipy, no-python26,
  no-windows, etc. tags instead.

TODO related to tags:
- Still some more tests that are set non-critical can be excluded.
- Fix --TagStatXXX options in run_atests.py.
@pekkaklarck pekkaklarck modified the milestones: 2.9.2, 3.0 Sep 14, 2015
@jussimalinen jussimalinen self-assigned this Sep 15, 2015
jussimalinen added a commit that referenced this issue Sep 15, 2015
… and make all of these tests to be always critical. #2091
jussimalinen added a commit that referenced this issue Sep 16, 2015
The run_atest will exclude the require-something tags based on the platform.
jussimalinen added a commit that referenced this issue Sep 16, 2015
pekkaklarck added a commit that referenced this issue Sep 22, 2015
- Separate class to inspect and store interpreter information.
- Use that class to pass info to executed tests via a variable file.
pekkaklarck added a commit that referenced this issue Sep 28, 2015
- Added new 'Command Line To List' and 'List To Command Line' keywords to the
  Process library to ease splitting/joining cli args. Test and code review as
  well as documentation still missing. #2160

- Replaced simple 'shlex.split' usage in atests with the aforementioned
  Command Line To List keyword in Robot data and with enhanced shlex usage
  in Python libraries.

- Added output files to generic Robot/Rebot execution keywords to avoid output
  streams getting full and execution hang on Windows.

- Added 5 minute timeouts to Robot/Rebot execution keywords to avoid hanging
  in general.

Above fixes related to the overall atest execution cleanup (#2091).
pekkaklarck added a commit that referenced this issue Sep 30, 2015
- Replace `Run Robot/Rebot Directly` with `Run Tests/Rebot Without Defaults`
  that utilizes `Run Tests/Rebot` internally.
- Cleanup to related tests.
@pekkaklarck
Copy link
Member

This task turned out to be much bigger than we expected but we are also happy with the end results. Remaining tasks:

  1. Resolve TODOs in atest_resource.robot added in dd3fc16.
    • Mainly keyword cleanup.
    • Some may not be good idea (generally contain ? at the end)
  2. Update atest/README.rst
    • Explain using no-ci.
    • Update section about required modules.
      • Add a link to requirements.txt.
      • Explain how to avoid running tests if modules not available

@jussimalinen
Copy link
Member Author

Thats it for now I think.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants