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

Arg --processtimeout does not kill running tests #568

Open
jkeset opened this issue Feb 15, 2024 · 1 comment
Open

Arg --processtimeout does not kill running tests #568

jkeset opened this issue Feb 15, 2024 · 1 comment

Comments

@jkeset
Copy link

jkeset commented Feb 15, 2024

Issue:
There is a related issue #321 that got fixed by introducing --processtimeout. The problem is however, when a person running rfbrowser tests in parallel tries to use it, it will end the process in the terminal display BUT the actual test execution keeps going, you can see the browsers are still running and executing keywords. This can cause a big resource bloat since 'timed out' tests will be executed alongside newly open browsers in freed threads.

EDIT: This also causes the log file from given process to be 'in use' preventing further data processing.

Expected behaviour?:
When a process 'times out' it should kill the test execution.

cmd input:
pabot --testlevelsplit --processes 2 --processtimeout 10 samplerobotfile.robot

pip libraries and resources:
robotframework==7.0
robotframework-browser==18.1.0
robotframework-pabot==2.18.0

python version == 3.12.2
node version == v20.9.0

Sample code:

*** Settings ***

Library    Browser

*** Test Cases ***
Test 1
    [Template]      Test templates for opening browser ${browser_name}  
    chromium

Test 2
    [Template]      Test templates for opening browser ${browser_name}  
    firefox

Test 3
    [Template]      Test templates for opening browser ${browser_name}  
    chromium

Test 4
    [Template]      Test templates for opening browser ${browser_name}  
    firefox

Test 5
    [Template]      Test templates for opening browser ${browser_name}  
    chromium

Test 6
    [Template]      Test templates for opening browser ${browser_name}  
    firefox

Test 7
    [Template]      Test templates for opening browser ${browser_name}  
    chromium

Test 8
    [Template]      Test templates for opening browser ${browser_name}  
    firefox

*** Keywords ***
    
Test templates for opening browser ${browser_name}
    Open Browser    https://www.google.com    ${browser_name}
    Go to    https://www.amazon.com
    Go to    https://www.ebay.com
    Go to    https://www.facebook.com
    Go to    https://www.yahoo.com
    Log    ${browser_name}
    Sleep    100s
    Go to    https://www.amazon.com
    Go to    https://www.ebay.com
    Go to    https://www.facebook.com
    Go to    https://www.yahoo.com
    Log   why is it still running

Note:
I wasn't sure if I should post it here or in rfbrowser issue tracker, so if you could please look into it and let us know, that would be nice. Thanks!

@hfy1111
Copy link

hfy1111 commented Nov 10, 2024

i am seeing the same issue, but it is only happening on docker with jenkin, no issue with local round.
it does kill the process,
due to exceeding the maximum timeout of 3600 seconds
however when it generated the final report, it will show below error:
Reading XML source 'xxxxx/pabot_results/2/output.xml' failed: ParseError: no element found: line 1204, column 52
Skipping 'xxxxxx/pabot_results/2/output.xml' from final result
and the final report become invalid:

NoSuchKey The specified key does not exist. custom/debugger/xxxxxx/xxxxx/xxxx/xx/xx/report.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants