私は複数のテストファイルを実行するGUIを持っています。 すべてのテストは、GUIがスレッドから実行中のサブプロセスを使用して1つずつ実行するPythonファイルです。いつでもサブプロセスを終了させるにはどうすればいいですか?
GUIでは、ユーザーはテストを実行するマシンを停止することができます。 この目的とその目的のためにサブプロセスをどのようにkillするかを知っています。 Killing sub process that run inside a thread
今、別の問題があります。 テストは、整然としたやり方で閉じなければならない多くのインスタンスを開きます。 kill()メソッドを使用すると、すべてのインスタンスが閉じず、それ以上のテストを実行できません。 I.Eユーザーからの停止前にテストで使用したCOMポート。まだ占有されており、これ以上テストを実行できません。
唯一の救済策は、GUIを閉じてから始めることです。つまり、sys.exit()のように、すべてのインスタンスを閉じてもGUIが終了するのと同じ効果が得られます。 私は待機(タイムアウト)を使用しようとしましたが、私が間違って使用しない限り、それはトリックをしません。
テストで何らかのメソッドを呼び出すような種類の割り込みを使用することはできますか?それは規則的に閉じますか?