내 소프트웨어를 스트레스 테스트하고 싶습니다. 실행 시간이 다른 여러 테스트 사례가 있습니다.
현재 저는 필수 옵션을 사용하여 스트레스 유틸리티를 실행하고 있으며 다른 터미널에서 테스트 케이스를 실행하고 있습니다. 테스트 케이스가 끝나면 Ctrl+C를 눌러 스트레스 프로세스를 종료합니다.
이제 스트레스 유틸리티를 실행한 다음 테스트 케이스를 실행하고 테스트 케이스가 끝난 후 스트레스 프로세스를 종료할 수 있는 스크립트를 만들고 싶습니다.
이제 스트레스 문제를 해결하는 해결 방법인 --timeout 옵션이 생겼습니다. 그래서 나는 다음과 같이 실행합니다.
stress -c 16 --timeout 3600
./runme //Testcase script
한 시간 후에 압력 유틸리티가 완료됩니다. 그러나 위의 해결 방법에는 다음과 같은 문제가 있습니다. 즉, ./runme이 1분에서 2~3시간이 걸릴 수 있습니다. 그래서 타임아웃 값을 미리 설정할 수가 없습니다.
이 문제를 처리할 수 있는 방법을 제안해주세요.
답변1
stresser
프로그램을 백그라운드에서 실행하고 pid
나중에 프로그램을 종료하는 데 사용된다는 점에 유의하세요. 지금 testcases
시작 하십시오 foreground
. 완료되면 testsuites
지금 종료하십시오 stresser
.
stress -c 16 & #<--- note no timeoutoption given and assuming now it runs forever
pid_stress=$!
./rune //Testcases script
kill -9 "$pid_stress"