Changes

Jump to: navigation, search

Firefox Performance Testing : A Python framework for Windows

3,540 bytes added, 21:26, 21 November 2006
no edit summary
= Project Details =
 
==The details==
This is different from Tinderbox. Two major differences are:
*Second, it measures performance characteristics while it's running the pageload tests--you can track cpu speed, memory, or any of the other counters listed [http://technet2.microsoft.com/WindowsServer/en/Library/86b5d116-6fb3-427b-af8c-9077162125fe1033.mspx?mfr=true here].
==Progress==
 
<table style="width: 100%;" class="standard-table" border=1 cellpadding=2 cellspacing=0>
<th style="width: 15%">Task</th>
<th>Details</th>
<th style="width: 10%">Priority</th>
<th style="width: 15%">Contributors</th>
<th style="width: 15%">Status</th>
<tr>
<td>Configuration Checker</td>
<td>
The configuration checker will check if all the configuration is done before running the performance testing. The checker entails:
** run_tests.py
*** yaml file validator
*** paths.py validator
</td>
<td style="background-color: #990000; text-align: center; font-weight: bold;">High</td>
<td>
* [[User:elichak|Liz Chak]]
* [[User:Themystic| Tom Aratyn]] - Introduced closures
</td>
<td>Went through the code of all the files. Made a list of the weaknesses of the code in the files and planned various resolutions.
</td>
</tr>
<tr>
<td>yaml file validator</td>
<td>
In run_tests.py:
 
The validator of yaml file is weak. It only checks for certain items in the file and will crash if those items are not there or if those items doesn't have any value. It doesn't check for unexpected values and doesn't give the user a clue that their yaml file has a problem.
</td>
<td style="background-color: #990000; text-align: center; font-weight: bold;">High
 
</td>
<td>
</td>
<td>
Changed the validator to check if items exist before storing the value. If one of the items doesn't exist, the program will terminate and it will let the user know that there the yaml file has to be fixed.
 
90% complete
</td>
</tr>
<tr>
<td>paths.py validator</td>
<td>
Currently the run_tests.py file doesn't validate the paths.py file. If the user misses a path or does a bad directory configuration, the program will crash and give this error:
 
<pre>
Traceback (most recent call last):
File "C:\proj\mozilla\testing\performance\
win32\run_tests.py", line 129, in ?
test_file(sys.argv[i])
File "C:\proj\mozilla\testing\performance\
win32\run_tests.py", line 122, in te
st_file
TP_RESOLUTION)
File "C:\proj\mozilla\testing\performance\
win32\report.py", line 152, in Gener
ateReport
mean = mean / len(ts_times[i])
ZeroDivisionError: integer division or modulo
by zero
</pre>
 
The following has to be done in the run_tests.py file to validate the paths.py file:
*checks paths for existance
*notify user if path doesnt exist and ask user if they want it created
*check if the directories have contents
 
</td>
<td style="background-color: #990000; text-align: center; font-weight: bold;">High</td>
<td>
* [[User:elichak|Liz Chak]]
</td>
<td>
*Currently run_tests.py checks if the user's directories exist on their system and prompts them to make the directories. I'm currently working on checking the content of the base_profile directory.
*There are many levels in the directory and here is the basic outline of the directory structure:
<pre>
base_profile (dir)
|
|__ bookmarkbackups (dir)
| |
| |__ .html files
|
|__ Cache (dir)
|
|__ .bak, .html, .ini,
.dat, .txt, .rdf,
.mfl files
(most important file - perf.js)
</pre>
*I haven't went through a thorough discussion with Alice about which files should be validated in the base_profile dir. From what I gathered from the other discussions we had, the perf.js file will crash the program is it's non-existant.
 
*Currently I the program checks for the existence of the base_profile dir and also checks if the bookmarkbackups, Cache dirs and perf.js dir exist.
 
60% completed
</td>
 
</tr>
</table>
= Project News =
1
edit

Navigation menu