Commit a35ce7a0 authored by Watchtek's avatar Watchtek
Browse files

Change user input on account type(remove dup count)

parent d692368d
Loading
Loading
Loading
Loading
+25 −14
Original line number Diff line number Diff line
@@ -35,9 +35,8 @@ class MultipleTest(unittest.TestCase):
            sys.exit(1)

        self.account_configs = []
        print("\n3. [필수 입력] 계정유형(1-어드민,2-(지역)관리자,3-사용자) / 계정 접속정보 / 커넥션 비중")
        print("형식 예시: 1 / admin, admin / 3")
        print("한 줄만 입력하세요. (빈 줄은 허용되지 않음)")
        print("\n3. [필수 입력] 계정유형(1-어드민,2-(지역)관리자,3-사용자) / 계정 접속정보")
        print("형식 예시: 1 / admin, admin")

        while True:
            user_input = input("").strip()
@@ -50,13 +49,27 @@ class MultipleTest(unittest.TestCase):
                print(f"입력 형식 오류: {e}. 다시 입력하세요.")

        # New inputs for connection management
        print("\n4. [선택] 테스트 유형(기본값: 일반접속): 일반 접속(1), 일시 접속(2), 부하 화면 접근(3)")
        print("\n4. [선택] 테스트 유형(기본값: 일반접속): 일반 접속(1), 대시보드 부하(2)")
        user_input = input().strip()

        if not user_input:
            # ✅ empty input → default
            print("입력이 비어있습니다. 기본값 '일반 접속(1)'으로 설정합니다.")
            self.function_to_execute = 1
        else:
            try:
            self.function_to_execute = int(input().strip())
                choice = int(user_input)
                # if choice in (1, 2):
                if choice == 1:
                    self.function_to_execute = choice
                else:
                    print("현재 스크립트는 일반 접속 방법만 지원합니다. '일반 접속(1)'으로 설정합니다.")
                    self.function_to_execute = 1
            except ValueError:
            print("잘못 입력니다. 기본값 '일반 접속(1)'으로 설정합니다.")
                print("잘못 입력하셨습니다. 기본값 '일반 접속(1)'으로 설정합니다.")
                self.function_to_execute = 1


        print("\n5. [선택] 커넥션 수 / 테스트 시간(분)(기본값: 30개 / 120분)")
        try:
            pool_input = input().strip().split('/')
@@ -99,15 +112,15 @@ class MultipleTest(unittest.TestCase):

    def _parse_account_line(self, user_input: str):
        """Parse a single account config line in the format:
           '<type> / username, password / duplicate_count'
           '<type> / username, password'
           Returns a dict on success or raises ValueError on bad format.
        """
        if not user_input or not user_input.strip():
            raise ValueError("빈 입력입니다. 입력을 반복합니다.")
            raise ValueError("다시 입력해 주십시요.")

        parts = user_input.split(' / ')
        if len(parts) < 3:
            raise ValueError("입력 형식이 잘못되었습니다. 예시: 1 / admin, admin / 3")
        if len(parts) < 2:
            raise ValueError("입력 형식이 잘못되었습니다. 예시: 1 / admin, admin")

        try:
            account_type = int(parts[0].strip())
@@ -116,7 +129,6 @@ class MultipleTest(unittest.TestCase):
                raise ValueError("아이디와 비밀번호를 쉼표로 구분하세요. 예시: admin, admin")
            username = credentials[0].strip()
            password = credentials[1].strip()
            duplicate_count = int(parts[2].strip())
        except ValueError as e:
            # Preserve the original exception context for better debugging and satisfy pylint W0707
            raise ValueError(f"입력 형식 오류: {e}") from e
@@ -125,7 +137,6 @@ class MultipleTest(unittest.TestCase):
            "account_type": account_type,
            "username": username,
            "password": password,
            "duplicate_count": duplicate_count
        }

    def check_http_status(self, url: str, max_retry: int = 3, ignore_cert: bool = True) -> bool: