CLI 프롬프트를 대화식으로 테스트할 때 문제가 발생하고 스캐너가 사용자 입력을 기다리지 않습니다.

WBOY
풀어 주다: 2024-02-13 21:18:18
앞으로
1171명이 탐색했습니다.

交互测试 cli 提示时出现问题,扫描仪不等待用户输入

php 편집자 Yuzai는 대화형 테스트를 수행할 때 때때로 문제가 발생한다는 것을 발견했습니다. 일반적인 문제 중 하나는 명령줄 인터페이스(CLI)를 사용하여 상호 작용할 때 스캐너가 사용자 입력을 기다리지 않을 수 있다는 것입니다. 즉, 사용자에게 입력을 요청하면 프로그램은 사용자의 응답을 기다리지 않고 즉시 실행을 계속합니다. 이로 인해 프로그램에 오류가 발생하거나 올바르게 실행되지 않을 수 있습니다. 이 문제에 대한 해결책은 적절한 기술이나 방법을 사용하여 스캐너가 원활한 상호 작용 테스트를 보장하기 위해 사용자 입력을 기다리도록 하는 것입니다.

질문 내용

클리 프롬프트를 검증하고 일부 프로그램 출력에 대한 응답으로 사용자 입력을 시뮬레이션하는 테스트를 작성하려고 합니다.

만드는 방법 scanner.scan나머지 글을 기다려볼까요?

내가 지금까지 가지고 있는 것:

으아악

예상 결과는 다음과 같습니다. 0123

실제 결과는 다음과 같습니다. 0

io.pipe 버전을 사용해봤습니다

으아악

결과: 치명적인 오류: 모든 고루틴이 잠자기 상태입니다 - 교착 상태입니다!

해결 방법

파이프를 사용할 때 쓰기와 읽기는 동기식입니다. 일치하는 읽기가 없으면 쓰기가 완료될 수 없습니다. 첫 번째 쓰기를 고루틴으로 이동합니다. 그리고 스캐너가 스캔을 중지하도록 파이프의 쓰기 끝을 닫습니다.

으아악

위 내용은 CLI 프롬프트를 대화식으로 테스트할 때 문제가 발생하고 스캐너가 사용자 입력을 기다리지 않습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿