WARN: No output files in "./pabot_results"

1,044 views
Skip to first unread message

Robert

unread,
Jun 27, 2017, 6:31:14 PM6/27/17
to robotframework-users

macOS Sierra
Python 2.7.12
robotframework==3.0.2
robotframework-pabot==0.36
robotremoteserver==1.1rc2

I modified _merge_one_run() in pabot/pabot.py to show why I am getting the error (see below). Could you please help what need to be done to resolve this issue?

Note:

  1. It is run in a virtualenv
  2. There is no output.xml in ./pabot_results/Testsuites.Transit.Transit\ Tigris;
  3. The stderr.txt and stdout.txt have 0 byte.
  4. Here is the output of the 'ls' from a shell window. All files are there with non-zero byte.
    $ ls -l ./pabot_results/Testsuites.Transit.Transit\ Tigris
    total 48
    -rw-r--r-- 1 robertwong staff 14066 Jun 27 12:58 output.xml
    -rw-r--r-- 1 robertwong staff 1962 Jun 27 12:58 stderr.txt
    -rw-r--r-- 1 robertwong staff 1494 Jun 27 12:58 stdout.txt

def _merge_one_run(outs_dir, options, tests_root_name, outputfile='output.xml'):
output_path = os.path.abspath(os.path.join(
options.get('outputdir', '.'),
options.get('output', outputfile)))
files = sorted(glob(os.path.join(_glob_escape(outs_dir), '**/*.xml')))
##### START DEBUG PRINT #####
print('outs_dir: {}, files: {}'.format(outs_dir, files))
os.system("ls -lR " + outs_dir)
##### END DEBUG PRINT #####
if not files:
_write('WARN: No output files in "%s"' % outs_dir, Color.YELLOW)
return ""
merge(files, options, tests_root_name).save(output_path)
return output_path

Console log:
<type 'exceptions.TypeError'>
outs_dir: ./pabot_results, files: []
total 32
drwxr-xr-x 4 robertwong staff 136 Jun 27 12:58 Testsuites.Transit.Transit Tigris
-rw-r--r-- 1 robertwong staff 12869 Jun 27 12:58 suite_names.xml

./pabot_results/Testsuites.Transit.Transit Tigris:
total 0
-rw-r--r-- 1 robertwong staff 0 Jun 27 12:58 stderr.txt
-rw-r--r-- 1 robertwong staff 0 Jun 27 12:58 stdout.txt
WARN: No output files in "./pabot_results"
Output:
[ ERROR ] Reading XML source '' failed: No such file or directory

Kevin O.

unread,
Jun 28, 2017, 12:45:05 PM6/28/17
to robotframework-users
Try running with the --verbose argument.
It seems like whatever pabot is launching, it is returning 0 (success) yet not outputting to stdout or stderr.
Whatever the exact command you see with verbose output enabled, try running whatever pybot is running from the command line.

Robert

unread,
Jun 28, 2017, 6:46:00 PM6/28/17
to robotframework-users
Here is the console log with --verbose. Still can't figure out what is going on. Your help is greatly appreciated.

╰─$ pabot --version                                                                                                                                                                     127 ↵
A parallel executor for Robot Framework test cases.
Version 0.36.

Supports all Robot Framework command line options and also following
options (these must be before normal RF options):

--verbose
  more output

--command [ACTUAL COMMANDS TO START ROBOT EXECUTOR] --end-command
  RF script for situations where pybot is not used directly

--processes [NUMBER OF PROCESSES]
  How many parallel executors to use (default max of 2 and cpu count)

--resourcefile [FILEPATH]
  Indicator for a file that can contain shared variables for
  distributing resources.

--pabotlib
  Start PabotLib remote server. This enables locking and resource
  distribution between parallel test executions.

--pabotlibhost [HOSTNAME]
  Host name of the PabotLib remote server (default is 127.0.0.1)

--pabotlibport [PORT]
  Port number of the PabotLib remote server (default is 8270)

--suitesfrom [FILEPATH TO OUTPUTXML]
  Optionally read suites from output.xml file. Failed suites will run
  first and longer running ones will be executed before shorter ones.

--argumentfile[INTEGER] [FILEPATH]
  Run same suite with multiple argumentfile options.
  For example "--argumentfile1 arg1.txt --argumentfile2 arg2.txt".

Copyright 2016 Mikko Korpela - Apache 2 License

Robot Framework 3.0.2 (Python 2.7.12 on darwin)
Elapsed time: 0 minutes 0.11 seconds
(.virtualenv) ╭─robertwong@Roberts-MacBook-Pro-8  ~/githome/jana-qa  ‹master*›
╰─$ robot --version
Robot Framework 3.0.2 (Python 2.7.12 on darwin)
(.virtualenv) ╭─robertwong@Roberts-MacBook-Pro-8  ~/githome/jana-qa  ‹master*›
╰─$ pabot --verbose --processes 8 --variable ENV:qa1 --variable TILESET_VERSION:11089398 --variable KH_TILESET_VERSION:${EMPTY} --include rdar18352597 /Users/robertwong/githome/jana-qa/.virtualenv/lib/python2.7/site-packages/jana_qa-1.3.14-py2.7.egg/janaqa/jana_tests/testsuites
<type 'exceptions.TypeError'>
WARN: No output files in "./pabot_results"
Output:
[ ERROR ] Reading XML source '' failed: No such file or directory

Try --help for usage information.
Elapsed time: 0 minutes 0.845 seconds
(.virtualenv) ╭─robertwong@Roberts-MacBook-Pro-8  ~/githome/jana-qa  ‹master*›
╰─$ ls -R ./pabot_results                                                                                                                                                               252 ↵
Testsuites.Localization.Poi Tigris/ suite_names.xml

./pabot_results/Testsuites.Localization.Poi Tigris:
output.xml stderr.txt stdout.txt
(.virtualenv) ╭─robertwong@Roberts-MacBook-Pro-8  ~/githome/jana-qa  ‹master*›
╰─$ ls -lR ./pabot_results
total 32
drwxr-xr-x  5 robertwong  staff    170 Jun 28 15:42 Testsuites.Localization.Poi Tigris/
-rw-r--r--  1 robertwong  staff  12861 Jun 28 15:42 suite_names.xml

./pabot_results/Testsuites.Localization.Poi Tigris:
total 40
-rw-r--r--  1 robertwong  staff  12267 Jun 28 15:43 output.xml
-rw-r--r--  1 robertwong  staff   3597 Jun 28 15:43 stderr.txt
-rw-r--r--  1 robertwong  staff   1549 Jun 28 15:43 stdout.txt

Tatu Aalto

unread,
Jun 29, 2017, 2:23:04 AM6/29/17
to rwon...@gmail.com, robotframework-users
Ugh

I think using Robot Framework variables from command line does not work. If you replace ${EMPTY} with real value, then it should work fine.

-Tatu
Send from my mobile


--
You received this message because you are subscribed to the Google Groups "robotframework-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to robotframework-users+unsubscrib...@googlegroups.com.
To post to this group, send email to robotframework-users@googlegroups.com.
Visit this group at https://groups.google.com/group/robotframework-users.
For more options, visit https://groups.google.com/d/optout.

Robert

unread,
Jul 24, 2017, 1:12:41 PM7/24/17
to robotframework-users, rwon...@gmail.com
The ${EMPTY} is not the issue. I finally tracked down to an internal package that interferes with the pabot operations. In this internal package, it imports monkey from gevent and executes monkey.patch_all(thread=False, select=False). I still have no idea how to resolve this but there is a workaround by simply comment out the execution of patch_all().
To unsubscribe from this group and stop receiving emails from it, send an email to robotframework-users+unsub...@googlegroups.com.
To post to this group, send email to robotframe...@googlegroups.com.

Swapnil Shankar

unread,
Oct 19, 2017, 5:25:40 PM10/19/17
to robotframework-users
@Robert....did u find a solution to this? I have a similar issue.

Thanks,
Swapnil
Reply all
Reply to author
Forward
0 new messages