The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)
Quality/Development
From Mer Wiki
< Quality(Difference between revisions)
(→Tools) |
(→Guidelines) |
||
(10 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
− | = | + | = Guidelines = |
− | + | Test package is a RPM package that includes scripts, binaries and/or libraries for testing a feature or function. | |
+ | |||
+ | * Test package's name must use <packagename>-tests[-*] format | ||
+ | ** eg. bluez-tests or bluez-tests-unittests | ||
+ | * '''Doesn't''' have to depend on testrunner | ||
+ | * Test-definition is not required, however recommended | ||
+ | ** Test package can have not approved or failing test cases | ||
+ | ** Test package's test-definition should be installed to '''/opt/tests/<packagename>/test-definition/''' | ||
+ | * Test package's files should be installed to '''/opt/tests/<packagename>/''' | ||
+ | * If test package provides some common test data (audio, video, image) those files should be installed to '''/opt/tests/<packagename>/{audio, video, image, text etc}/''' | ||
'''OBS''' | '''OBS''' | ||
− | + | * Host (SDK) and device side tools to [http://build.merproject.org/project/show?project=mer-tools%3Adevel mer-tools:devel]. Once package is tested and you are happy with it create submit request to [http://build.merproject.org/project/show?project=mer-tools%3Atesting mer-tools:testing]. Please contact lbt from freenode IRC if you have questions. | |
− | * Host (SDK) and device side tools | + | * Normally tests are packaged in the same repository than actual test target, but if you have independent test software those should locate at [http://github.com/mer-qa mer-qa] GIT repository. Repositories are webhooked to [http://build.merproject.org/project/show?project=mer-qa%3Adevel mer-qa:devel] OBS project. Please contact mkosola or kontio from freenode IRC #nemomobile to create git repos and wehooks to OBS. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | = Test development = | |
− | + | ||
As a developer: | As a developer: | ||
− | # Search the | + | # Search (or ask) the test's version control location |
− | # Pull the | + | # Pull the test's source code and make changes |
# Copy the original package to your home project in OBS | # Copy the original package to your home project in OBS | ||
# Update your changes to the OBS | # Update your changes to the OBS | ||
# Test your changes | # Test your changes | ||
# Push your changes to the version control | # Push your changes to the version control | ||
− | # Inform | + | # Inform QA team about the changes with changes diff (URL to gitorious/gerrit/github diff) |
− | # The | + | # The QA team will review, retest and update the tool to OBS |
+ | # The QA team will select and approve tests for package and release testing | ||
− | |||
− | + | As a QA team member: | |
− | + | # Review and test submitted / changed test cases | |
− | + | # Approve only passing and useful test cases. For failing test cases, inform the developer and/or file a bug/task | |
+ | # Update package's test-definition and add approved test cases to package/release test plan | ||
[[Category:QA]] | [[Category:QA]] |
Latest revision as of 12:18, 16 December 2013
[edit] Guidelines
Test package is a RPM package that includes scripts, binaries and/or libraries for testing a feature or function.
- Test package's name must use <packagename>-tests[-*] format
- eg. bluez-tests or bluez-tests-unittests
- Doesn't have to depend on testrunner
- Test-definition is not required, however recommended
- Test package can have not approved or failing test cases
- Test package's test-definition should be installed to /opt/tests/<packagename>/test-definition/
- Test package's files should be installed to /opt/tests/<packagename>/
- If test package provides some common test data (audio, video, image) those files should be installed to /opt/tests/<packagename>/{audio, video, image, text etc}/
OBS
- Host (SDK) and device side tools to mer-tools:devel. Once package is tested and you are happy with it create submit request to mer-tools:testing. Please contact lbt from freenode IRC if you have questions.
- Normally tests are packaged in the same repository than actual test target, but if you have independent test software those should locate at mer-qa GIT repository. Repositories are webhooked to mer-qa:devel OBS project. Please contact mkosola or kontio from freenode IRC #nemomobile to create git repos and wehooks to OBS.
[edit] Test development
As a developer:
- Search (or ask) the test's version control location
- Pull the test's source code and make changes
- Copy the original package to your home project in OBS
- Update your changes to the OBS
- Test your changes
- Push your changes to the version control
- Inform QA team about the changes with changes diff (URL to gitorious/gerrit/github diff)
- The QA team will review, retest and update the tool to OBS
- The QA team will select and approve tests for package and release testing
As a QA team member:
- Review and test submitted / changed test cases
- Approve only passing and useful test cases. For failing test cases, inform the developer and/or file a bug/task
- Update package's test-definition and add approved test cases to package/release test plan