Skip to content

initial infrastructure for smoke tests#176

Merged
graysonarts merged 3 commits intotableau:developmentfrom
graysonarts:add-inital-smoke-infrastructure
May 11, 2017
Merged

initial infrastructure for smoke tests#176
graysonarts merged 3 commits intotableau:developmentfrom
graysonarts:add-inital-smoke-infrastructure

Conversation

@graysonarts
Copy link
Contributor

This isn't complete, but an idea I'm playing with. @t8y8 thoughts?

$ python setup.py test       # Used to run unit tests for the library
$ python setup.py smoke  # Used to run all the live tests against a server (with environment variables to configure)

__pycache__/
*.py[cod]
*$py.class
test.junit.xml
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's gonna end up in here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's the junior version of the results that our internal build system needs for test runs

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Junit not junior

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You'll get to be a grown-up results file someday, little test.junit.xml

#parentdir_prefix =

[aliases]
smoke=pytest
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This means smoke will run unittests AND smoke, right?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yup. I have smoke running both the test directory and the smoke directory. Test will only run the test directory

tests_require=[
'requests-mock>=1.0,<1.1a0'
'requests-mock>=1.0,<1.1a0',
'pytest'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was wondering when we'd eventually end up moving beyond unittest as our test runner :P

@t8y8
Copy link
Collaborator

t8y8 commented Apr 14, 2017

Approach seems solid in terms of a runner.

Feature requests (may not be our first pass):

  • Command Line Interface python setup.py smoke --server=http://server.com
  • Ability to group some tests at a high level
    • python setup.py smoke --server=http://server.com --suite=GetOnly
    • python setup.py smoke --server=http://server.com --suite=GetAndWrite
  • We'll need to figure out how we handle state between runs (there would be a delay if we just delete a site, for example, and rerun tests too quickly)

@t8y8
Copy link
Collaborator

t8y8 commented Apr 15, 2017

I checked this out locally and was able to run everything, though it was mad at me that I was using a version of requests-mock that was too new (1.2 -- latest is 1.3).

Why pin to 1.1?

@graysonarts
Copy link
Contributor Author

@t8y8 oh, hrm, we should pin to 1.x not 1.1.x. I'll fix that.

@graysonarts
Copy link
Contributor Author

@t8y8 okay with me merging in this bit? I need it for integration work

Copy link
Collaborator

@t8y8 t8y8 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀

@graysonarts graysonarts merged commit 735130a into tableau:development May 11, 2017
@graysonarts graysonarts deleted the add-inital-smoke-infrastructure branch May 11, 2017 18:12
t8y8 pushed a commit to t8y8/server-client-python that referenced this pull request Jun 28, 2017
* initial infrastructure for smoke tests

* trying to fix travis errors by not pinning the version

* fix pinning to major version, not minor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants