2008 Implementers Meeting Testing Competition
(Redirected from Implementers Meeting Testing Competition)
Contents |
[edit]
OpenMRS 1.3.0 Testing Competition
[edit]
Current Status
[edit]
Rules and Regulations
- Start time: When you finish reading this
- End time: Friday June 20th at 9:00AM Durban time
- Eligibility: Everyone except Ben and Justin
- Prizes: $100 USD to the first ten people to reach either 100 developer points or 100 non-developer points. +++
- Judge, Jury, and Appeals court: Ben and Justin
+++ Number of winners and thresholds subject to change at any time
[edit]
Non-developer point system:
| Task | Point value | Rules | Submission |
|---|---|---|---|
| Find a bug | 10 points 5 bonus points if able to recreate it |
| Create a ticket |
| Submit demo data for testing purposes | 10 points |
| Submit a zipped mysql dump back to Ben:
|
| Create an XML Report | 10-20 points based on complexity |
| Create a wiki page describing your report |
| Other ideas?? |
[edit]
Developer point system:
| Task | Point value | Rules | Submission |
|---|---|---|---|
| Junit tests | 1-5 points for each non-service test method 5-15 points for each service test method |
| Create a ticket |
| Bug fix | 5 to 20 points |
| Attach patch file to previously opened ticket |
| Review a bug fix patch | 1 to 10 points |
| Submit repatch to the previously created ticket |
| Code Comments | 1 point per 10 lines added/fixed |
| Create a ticket with a patch attached |
| Upgrade a module to work with 1.3 | 5-30 points |
| Create a ticket with a patch attached |
| 1.3 Installer | 10 points for naïve installer
30 points for smart installer |
| Create wiki page with installer scripts and/or files attached |
| Helping a nondeveloper with a task | 5 points | ?? | Honor system. |
- NOTICE!! Judges reserve the right to award and reject points as they see fit. Intent, work, and timing will all be factors in the decision making process
- Point possibilities will be posted to the ticket
- All tickets must be tagged with “HISA2008”
- Junit test requirements:
- Each test method should be small and test a specific functionality. See BDD
- Replace the word "test" with the word “should” to check if its a specific enough method:
- "public void testLocation() { }" is too vague
- "public void testRetireLocation() {}" is better
- "public void testSaveLocationWithNonNullCreator() {}" is best
- Good example of non-Service test: source: openmrs/trunk/test/api/org/openmrs/test/PatientTest.java (testAddRemoveIdentifiers)
- Good example of service test: source: openmrs/trunk/test/api/org/openmrs/test/api/LocationServiceTest.java (testRetireLocation)
- Javadoc requirements:
- Should fully explain the class and/or method's functionality
- Should include a few @see statements if required
- All method javadocs should have method javadoc text to its parameters
- Good class comment: source: openmrs/trunk/src/api/org/openmrs/User.java
- Good method comments: source: openmrs/trunk/src/api/org/openmrs/api/LocationService.java
- Good web class comment: source: openmrs/trunk/src/web/org/openmrs/module/web/taglib/ExtensionPointTag.java
- Current Installer files (valid for 1.0): source:openmrs-contrib/install/bitrock
