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

Create a shared account pool for end-to-end tests instead of creating and seeding blockchain accounts before each test #1025

Open
kbeker opened this issue Dec 14, 2018 · 3 comments
Assignees
Labels
chore icebox tests Label related with all issues which are about tests

Comments

@kbeker
Copy link
Contributor

kbeker commented Dec 14, 2018

This issue is related with #744 and #970.
To shorten duration on SCI initiation tests should be run together. There should be created new file where would be whole mechanizm to initialize SCI instance and pass it to all api-e2e tests (instead of initializing SCI every api-e2e test).

  • Change all api-e2e-tests from based on function to based on class, where every test will be a method in this class.
  • Modify @count_fails decorator, It should be a class from which every api-e2e-tests class will inherit. It still should work in the same way.
  • It still should be a possibility to run each api-e2e-test without running all others tests in one time
  • It still should be a possibility to run tests without initializing full SCIBaseTest
  • Create main class for all api-e2e-tests together.
  • Init SCIBaseTest in the beginning of whole class
  • Pass instance of SCIBaseTest to every api-e2e-test
  • Run all tests one by one starting from UC1 to UC5

Remember that not only:

  • api-e2e-force-payment.py
  • api-e2e-force-accept-or-reject-results-test.py
  • api-e2e-additional-verification-test.py
    have been modified to get all keys from SCIBaseTest. Other tests left also need to be modified to retrieve keys from SCIBaseTest class.

Whole SCI mechanism for creating accounts and checking transaction is already done in #995.

@kbeker kbeker added chore not in pivotal Not yet added as a task in any story in Pivotal payment use case 'force payment' use case tests Label related with all issues which are about tests and removed payment use case 'force payment' use case labels Dec 14, 2018
@PaweuB
Copy link

PaweuB commented Dec 19, 2018

@PaweuB PaweuB removed the not in pivotal Not yet added as a task in any story in Pivotal label Dec 19, 2018
@cameel
Copy link
Contributor

cameel commented Dec 19, 2018

Could you explain the proposed solution in more detail? From this description I have no idea how api-e2e-tests.sh is going to look like. And who is supposed to run it and when.

@cameel cameel changed the title Initialize SCIBaseTest before all api-e2e tests and pass it to every tests Create an shared account pool for end-to-end tests instead of creating and funding blockchain accounts before each test Dec 19, 2018
@cameel cameel changed the title Create an shared account pool for end-to-end tests instead of creating and funding blockchain accounts before each test Create a shared account pool for end-to-end tests instead of creating and seeding blockchain accounts before each test Dec 19, 2018
@PaweuB PaweuB added the icebox label Dec 20, 2018
@kbeker
Copy link
Contributor Author

kbeker commented Jan 10, 2019

@cameel I edited issue to my idea how it should be done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore icebox tests Label related with all issues which are about tests
Projects
None yet
Development

No branches or pull requests

4 participants