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

As an application developer I want to use CLI tests to test the interface of my program such that incompatible options or invalid inputs can be tested automatically. #3

Closed
4 of 13 tasks
rrahn opened this issue Mar 26, 2020 · 6 comments
Assignees
Labels
ready to tackle This story was discussed and can be immidietly tackled
Milestone

Comments

@rrahn
Copy link
Contributor

rrahn commented Mar 26, 2020

Acceptance criteria

  • I can run make cli_test in the build directory of the application and it builds the tests
  • there is a demo of the cli tests in the cli test directory that can be also used to automatically test the application template

Tasks

  • Change cmake to fetch and build gtest within configuration step using FETCH_CONTENT
  • Add a cli_test class that inherits from testing::test and adds support for configuring the application CLI parameter and calling the application.
  • Add a cli test for the demo application inside of the application template

Definition of Done

  • Implementation and design approved
  • Unit tests pass
  • Test coverage = 100%
  • Microbenchmarks added and/or affected microbenchmarks < 5% performance drop
  • API documentation added
  • Tutorial/teaching material added
  • Test suite compiles in less than 30 seconds (on travis)
  • Changelog entry added
@rrahn rrahn added this to the Sprint 1 milestone Mar 26, 2020
@rrahn rrahn added ready to tackle This story was discussed and can be immidietly tackled needs refinement A story that was not discussed and/or estimated by the team yet but is planned for upcoming sprints. and removed ready to tackle This story was discussed and can be immidietly tackled labels Mar 26, 2020
@rrahn
Copy link
Contributor Author

rrahn commented Mar 27, 2020

What is the design of the test class? Which functionality is expected?
How to set the program to call?
How to set the program options?
How to control the input/output?

@rrahn
Copy link
Contributor Author

rrahn commented Mar 30, 2020

@rrahn rrahn added ready to tackle This story was discussed and can be immidietly tackled and removed needs refinement A story that was not discussed and/or estimated by the team yet but is planned for upcoming sprints. labels Mar 30, 2020
@Irallia Irallia assigned Irallia and unassigned Irallia Mar 30, 2020
@joergi-w joergi-w self-assigned this Apr 3, 2020
@joergi-w
Copy link
Member

joergi-w commented Apr 3, 2020

Task 1 (Change cmake to fetch and build gtest within configuration step using FETCH_CONTENT) is independent and not related to the User Story above. I created a separate issue for this: #47

@joergi-w
Copy link
Member

joergi-w commented Apr 3, 2020

The Definition of Done here makes no sense (API doc for CLI test?, we do not have coverage test yet, unit tests and microbenchmarks are independent). I will ignore many of them.

@rrahn
Copy link
Contributor Author

rrahn commented Apr 3, 2020

The Definition of Done here makes no sense (API doc for CLI test?, we do not have coverage test yet, unit tests and microbenchmarks are independent). I will ignore many of them.

That won't always be the case. But you did it right to cross through what is not needed. It is merely a reminder on commonly agreed goals for a story. In the future we might want to differentiate between items with a DoD and without. But first let's gather some intel to make an informed decision.

@rrahn rrahn modified the milestones: Sprint 1, Sprint 2 Apr 15, 2020
@joergi-w
Copy link
Member

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready to tackle This story was discussed and can be immidietly tackled
Projects
None yet
Development

No branches or pull requests

3 participants