Browse Source

Tools: autotest: improve test diagnostics

mission-4.1.18
Peter Barker 6 years ago committed by Peter Barker
parent
commit
bf0a947317
  1. 9
      Tools/autotest/apmrover2.py
  2. 17
      Tools/autotest/arducopter.py
  3. 4
      Tools/autotest/arduplane.py
  4. 8
      Tools/autotest/common.py

9
Tools/autotest/apmrover2.py

@ -144,7 +144,8 @@ class AutoTestRover(AutoTest): @@ -144,7 +144,8 @@ class AutoTestRover(AutoTest):
self.clear_wp(9)
except Exception as e:
self.progress("Caught exception: %s" % str(e))
self.progress("Caught exception: %s" %
self.get_exception_stacktrace(e))
ex = e
self.disarm_vehicle()
@ -291,7 +292,8 @@ class AutoTestRover(AutoTest): @@ -291,7 +292,8 @@ class AutoTestRover(AutoTest):
self.progress("Sprayer OK")
except Exception as e:
self.progress("Caught exception: %s" % str(e))
self.progress("Caught exception: %s" %
self.get_exception_stacktrace(e))
ex = e
self.context_pop()
self.disarm_vehicle(force=True)
@ -507,7 +509,8 @@ Brakes have negligible effect (with=%0.2fm without=%0.2fm delta=%0.2fm) @@ -507,7 +509,8 @@ Brakes have negligible effect (with=%0.2fm without=%0.2fm delta=%0.2fm)
self.wait_groundspeed(0, 0.2, timeout=120)
except Exception as e:
self.progress("Caught exception: %s" % str(e))
self.progress("Caught exception: %s" %
self.get_exception_stacktrace(e))
ex = e
self.context_pop()
self.mavproxy.send("fence clear\n")

17
Tools/autotest/arducopter.py

@ -1597,7 +1597,8 @@ class AutoTestCopter(AutoTest): @@ -1597,7 +1597,8 @@ class AutoTestCopter(AutoTest):
blocking=True,
timeout=5)
except Exception as e:
print("Caught exception %s" % str(e))
self.progress("Caught exception: %s" %
self.get_exception_stacktrace(e))
if m is not None:
raise NotAchievedException("Received unexpected RANGEFINDER msg")
@ -3305,7 +3306,8 @@ class AutoTestCopter(AutoTest): @@ -3305,7 +3306,8 @@ class AutoTestCopter(AutoTest):
self.set_rc(10, 2000)
self.check_avoidance_corners()
except Exception as e:
self.progress("Caught exception: %s" % str(e))
self.progress("Caught exception: %s" %
self.get_exception_stacktrace(e))
ex = e
self.context_pop()
self.mavproxy.send("fence clear\n")
@ -3322,10 +3324,11 @@ class AutoTestCopter(AutoTest): @@ -3322,10 +3324,11 @@ class AutoTestCopter(AutoTest):
self.set_parameter("FENCE_ENABLE", 1)
self.check_avoidance_corners()
except Exception as e:
self.progress("Caught exception: %s" % str(e))
self.progress("Caught exception: %s" %
self.get_exception_stacktrace(e))
ex = e
self.context_pop()
self.mavproxy.send("fence clear\n")
self.clear_fence()
self.disarm_vehicle(force=True)
if ex is not None:
raise ex
@ -3382,7 +3385,8 @@ class AutoTestCopter(AutoTest): @@ -3382,7 +3385,8 @@ class AutoTestCopter(AutoTest):
(pos_delta, max_delta))
except Exception as e:
self.progress("Caught exception: %s" % str(e))
self.progress("Caught exception: %s" %
self.get_exception_stacktrace(e))
ex = e
self.context_pop()
self.disarm_vehicle(force=True)
@ -3421,7 +3425,8 @@ class AutoTestCopter(AutoTest): @@ -3421,7 +3425,8 @@ class AutoTestCopter(AutoTest):
self.do_RTL()
except Exception as e:
self.progress("Caught exception: %s" % str(e))
self.progress("Caught exception: %s" %
self.get_exception_stacktrace(e))
ex = e
self.context_pop()
self.mavproxy.send("fence clear\n")

4
Tools/autotest/arduplane.py

@ -1246,8 +1246,8 @@ class AutoTestPlane(AutoTest): @@ -1246,8 +1246,8 @@ class AutoTestPlane(AutoTest):
blocking=True,
timeout=5)
except Exception as e:
print("Caught exception:")
self.progress(self.get_exception_stacktrace(e))
self.progress("Caught exception: %s" %
self.get_exception_stacktrace(e))
if m is not None:
raise NotAchievedException("Received unexpected RANGEFINDER msg")

8
Tools/autotest/common.py

@ -2768,7 +2768,7 @@ class AutoTest(ABC): @@ -2768,7 +2768,7 @@ class AutoTest(ABC):
self.mavproxy.send("set streamrate %u\n" % sr)
except Exception as e:
self.progress("Caught exception %s" %
self.progress("Caught exception: %s" %
self.get_exception_stacktrace(e))
# tell MAVProxy to start stuffing around with the rates:
sr = self.sitl_streamrate()
@ -2795,6 +2795,12 @@ class AutoTest(ABC): @@ -2795,6 +2795,12 @@ class AutoTest(ABC):
if m is None:
raise NotAchievedException("Requested CAMERA_FEEDBACK did not arrive")
def clear_fence_using_mavproxy(self):
self.mavproxy.send("fence clear\n")
def clear_fence(self):
self.clear_fence_using_mavproxy()
def clear_mission_using_mavproxy(self):
self.mavproxy.send("wp clear\n")
self.mavproxy.send('wp list\n')

Loading…
Cancel
Save