Closed Bug 826182 Opened 7 years ago Closed 7 years ago

Marionette's runtests.py should catch exceptions of the form "EOFError: telnet connection closed" and output a clearer message

Categories

(Testing :: Marionette, defect)

ARM
Gonk (Firefox OS)
defect
Not set

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 826132

People

(Reporter: emorley, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: sheriffing-P1)

Bug 802877 has been filed multiple times
The B2G emulator is intermittently crashing during tests (bug 802877), but when it does so, the resultant log output is of the form:

{
08:43:37    ERROR -  Traceback (most recent call last):
08:43:37     INFO -    File "/home/cltbld/talos-slave/test/build/tests/marionette/tests/testing/marionette/client/marionette/tests/unit/test_simpletest_sanity.py", line 79, in test_ok
08:43:37     INFO -      runtests()
08:43:37     INFO -    File "/home/cltbld/talos-slave/test/build/tests/marionette/tests/testing/marionette/client/marionette/tests/unit/test_simpletest_sanity.py", line 74, in runtests
08:43:37     INFO -      self.assertEqual(1, self.marionette.execute_async_script(sentPass2)["passed"]);
08:43:37     INFO -    File "/home/cltbld/talos-slave/test/build/tests/marionette/marionette/marionette.py", line 474, in execute_async_script
08:43:37     INFO -      specialPowers=special_powers)
08:43:37     INFO -    File "/home/cltbld/talos-slave/test/build/tests/marionette/marionette/marionette.py", line 214, in _send_message
08:43:37     INFO -      port = self.emulator.restart(self.local_port)
08:43:37     INFO -    File "/home/cltbld/talos-slave/test/build/tests/marionette/marionette/emulator.py", line 276, in restart
08:43:37     INFO -      self.start()
08:43:37     INFO -    File "/home/cltbld/talos-slave/test/build/tests/marionette/marionette/emulator.py", line 372, in start
08:43:37     INFO -      self.geo.set_default_location()
08:43:37     INFO -    File "/home/cltbld/talos-slave/test/build/tests/marionette/marionette/emulator_geo.py", line 13, in set_default_location
08:43:37     INFO -      self.set_location(self.lon, self.lat)
08:43:37     INFO -    File "/home/cltbld/talos-slave/test/build/tests/marionette/marionette/emulator_geo.py", line 16, in set_location
08:43:37     INFO -      self.emulator._run_telnet('geo fix %0.5f %0.5f' % (self.lon, self.lat))
08:43:37     INFO -    File "/home/cltbld/talos-slave/test/build/tests/marionette/marionette/emulator.py", line 236, in _run_telnet
08:43:37     INFO -      return self._get_telnet_response(command)
08:43:37     INFO -    File "/home/cltbld/talos-slave/test/build/tests/marionette/marionette/emulator.py", line 225, in _get_telnet_response
08:43:37     INFO -      line = self.telnet.read_until('\n')
08:43:37     INFO -    File "/usr/lib/python2.6/telnetlib.py", line 319, in read_until
08:43:37     INFO -      return self.read_very_lazy()
08:43:37     INFO -    File "/usr/lib/python2.6/telnetlib.py", line 395, in read_very_lazy
08:43:37     INFO -      raise EOFError, 'telnet connection closed'
08:43:37     INFO -  TEST-UNEXPECTED-FAIL | test_simpletest_sanity.py SimpletestSanityTest.test_ok | EOFError: telnet connection closed
}

The "TEST-UNEXPECTED-FAIL | <test_name> | EOFError: telnet connection closed" format implies that it is test specific, which is why we've had multiple dupes filed of bug 802877.

We should handle the EOFError differently and instead print something like:
"08:43:37     ERROR -  Automation Error: Telnet connection closed - the B2G emulator has likely crashed".

We should also halt the run at that point (but that's bug 813292).
Ignore line 1 of comment 0 - copypasta fail.
Blocks: 823076
This particular error was a side effect of bug 826132, which is now fixed.  We shouldn't see this particular error any longer.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 826132
You need to log in before you can comment on or make changes to this bug.