From Fedora Project Wiki
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
* There are two Retrace Server instances running in the Fedora infrastructure at the moment: {{command|retrace.fedoraproject.org}} and {{command|retrace02.fedoraproject.org}}. {{command|abrt-retrace-client}} defaults to the first one, which only supports Fedora 15 and will be soon replaced by the {{command|retrace02}} machine. For testing purposes the {{command|retrace02}} server needs to be used. | * There are two Retrace Server instances running in the Fedora infrastructure at the moment: {{command|retrace.fedoraproject.org}} and {{command|retrace02.fedoraproject.org}}. {{command|abrt-retrace-client}} defaults to the first one, which only supports Fedora 15 and will be soon replaced by the {{command|retrace02}} machine. For testing purposes the {{command|retrace02}} server needs to be used. | ||
* You need to use insecure mode (the retrace process is not stopped on certificate error), thus it is not a good idea to use coredumps that may contain sensitive data. | * You need to use insecure mode (the retrace process is not stopped on certificate error), thus it is not a good idea to use coredumps that may contain sensitive data. | ||
* You need a readable and writable crash directory, that's why you must run the application under root if you want to use {{command|/var/spool/ccpp-*}} crashes. {{command|$HOME/.abrt/spool/ccpp-*}} should work fine even without root privileges. | |||
|setup= | |setup= | ||
# Make sure you have ABRT crashes caught by CCpp (crashes in C and C++ applications) that need retrace (i.e. you haven't already retrieved the necessary debuginfo packages and generated the full backtrace) available. If you do not have any, run a C or C++ application and crash it using {{command|kill -SIGSEGV (pid)}} or {{command|pkill -SIGSEGV (processname)}} | # Make sure you have ABRT crashes caught by CCpp (crashes in C and C++ applications) that need retrace (i.e. you haven't already retrieved the necessary debuginfo packages and generated the full backtrace) available. If you do not have any, run a C or C++ application and crash it using {{command|kill -SIGSEGV (pid)}} or {{command|pkill -SIGSEGV (processname)}} |
Revision as of 12:36, 26 September 2011
Description
This test case tests the Retrace Server's command line interface.
- There are two Retrace Server instances running in the Fedora infrastructure at the moment:
retrace.fedoraproject.org
andretrace02.fedoraproject.org
.abrt-retrace-client
defaults to the first one, which only supports Fedora 15 and will be soon replaced by theretrace02
machine. For testing purposes theretrace02
server needs to be used. - You need to use insecure mode (the retrace process is not stopped on certificate error), thus it is not a good idea to use coredumps that may contain sensitive data.
- You need a readable and writable crash directory, that's why you must run the application under root if you want to use
/var/spool/ccpp-*
crashes.$HOME/.abrt/spool/ccpp-*
should work fine even without root privileges.
Setup
- Make sure you have ABRT crashes caught by CCpp (crashes in C and C++ applications) that need retrace (i.e. you haven't already retrieved the necessary debuginfo packages and generated the full backtrace) available. If you do not have any, run a C or C++ application and crash it using
kill -SIGSEGV (pid)
orpkill -SIGSEGV (processname)
- The crash reports will be under
/var/spool/abrt
; you can identify them by the date and time
How to test
- Run
abrt-retrace-client create -d /path/ABRT_crash_directory
- Run
abrt-retrace-client create --url retrace02.fedoraproject.org -d /path/ABRT_crash_directory
- Run
abrt-retrace-client create --url retrace02.fedoraproject.org -k -d /path/ABRT_crash_directory
, the-k
option disables HTTPS certificate check - Run
abrt-retrace-client status --url retrace02.fedoraproject.org -k -t task_id -p task_password
with task_id and task_password obtained fromcreate
action - Run
abrt-retrace-client status --url retrace02.fedoraproject.org -k -t task_id -p task_password
with a wrong combination of task_id and task_password - Run
abrt-retrace-client log --url retrace02.fedoraproject.org -k -t task_id -p task_password
while the job is stillPENDING
- Run
abrt-retrace-client log --url retrace02.fedoraproject.org -k -t task_id -p task_password
after the job is finished (by success or failure) - Run
abrt-retrace-client backtrace --url retrace02.fedoraproject.org -k -t task_id -p task_password
after the job is finished successfully - Run
abrt-retrace-client backtrace --url retrace02.fedoraproject.org -k -t task_id -p task_password
after the job is finished by failure - Run
abrt-retrace-client batch --url retrace02.fedoraproject.org -k -d /path/ABRT_crash_directory
- Run
abrt-retrace-client create --url retrace02.fedoraproject.org -k -d /path/ABRT_crash_directory
, replacing coredump, executable or package file by some random content - Try to upload a larger crash (eg. kill JVM).
- Try to replace coderump, executable or package file by some special file (device, symlink)
Expected Results
- The process should fail because F16 is not supported by the default server
- The process should fail because of certificate hostname mismatch
- The job should be started, task_id and task_password returned on stdout
- One of the values
PENDING
,FINISHED_SUCCESS
,FINISHED_FAILURE
should be returned on stdout together with a more detailed description - HTTP
404 Not Found
or403 Forbidden
error code should be returned depending on whether task with task_id exists or not. Should be the same withlog
andbacktrace
actions - HTTP
404 Not Found
error code should be returned. Should be the same withbacktrace
action - Plaintext log should be returned on stdout
- Plaintext backtrace should be returned on stdout
- HTTP
404 Not Found
error code should be returned - All actions should happen at once - create, periodically ask for status, download log (print to stdout) / backtrace (save into crash directory) depending on whether the result was successful or not
- The task should finish by failure
- If the upload size is larger than 8 MB, you should be prompted to confirm
- The request should be denied