DonggeLiu / Legion

A coverage-based software testing tool
MIT License
29 stars 4 forks source link

Questions about the `BenchExec` framework #14

Closed DonggeLiu closed 4 years ago

DonggeLiu commented 4 years ago

I found where the BenchExec saves its results, but when running table generator on that result, the following error occurs:

table-generator 'results/legion-Ackermann01-2.2020-02-04_2028.results.test-comp20_prop-coverage-branches.ReachSafety-ECA.xml.bz2' INFO: results/legion-Ackermann01-2.2020-02-04_2028.results.test-comp20_prop-coverage-branches.ReachSafety-ECA.xml.bz2 INFO: Merging results... INFO: Generating table... INFO: Writing HTML into results/legion-Ackermann01-2.2020-02-04_2028.results.test-comp20_prop-coverage-branches.ReachSafety-ECA.html ... INFO: Writing CSV into results/legion-Ackermann01-2.2020-02-04_2028.results.test-comp20_prop-coverage-branches.ReachSafety-ECA.csv ... concurrent.futures.process._RemoteTraceback: """ Traceback (most recent call last): File "/usr/lib/python3.6/concurrent/futures/process.py", line 175, in _process_worker r = call_item.fn(*call_item.args, **call_item.kwargs) File "/usr/lib/python3/dist-packages/benchexec/tablegenerator/init.py", line 1976, in write_table_in_format file.write(result) UnicodeEncodeError: 'ascii' codec can't encode character '\u2014' in position 17715: ordinal not in range(128) """

The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/bin/table-generator", line 11, in load_entry_point('BenchExec==2.5', 'console_scripts', 'table-generator')() File "/usr/lib/python3/dist-packages/benchexec/tablegenerator/init.py", line 2273, in main f.result() # to get any exceptions that may have occurred File "/usr/lib/python3.6/concurrent/futures/_base.py", line 432, in result return self.get_result() File "/usr/lib/python3.6/concurrent/futures/_base.py", line 384, in get_result raise self._exception UnicodeEncodeError: 'ascii' codec can't encode character '\u2014' in position 17715: ordinal not in range(128)

DonggeLiu commented 4 years ago

Here is the output from BenchExec, there is warning complaining about pqos_wrapper, but I guess that should not trigger the error above? image

DonggeLiu commented 4 years ago

By the way, the set is (confusingly) named as ECA only because I did not change the task name when re-using the content of the XML file:

  <tasks name="ReachSafety-ECA">
      <includesfile>../sv-benchmarks/c/Ackermann01-2.set</includesfile>
    <option name="-32"/>
  </tasks>
DonggeLiu commented 4 years ago

It seems this only occurs when ssh to Linux on macOS. It works fine on native Linux.