-1

在我们的测试中,我以明文形式提供了服务器的 API 密钥。为了避免这种情况,我想出了一个新的 python 脚本 Secure.py(这包括“加密”和“解密”功能)并且它工作正常。

我的机器人测试中有一个解密关键字。

*** Variables ***
${secret_phrase}    abcdefghij        
${encrypted_Key}    ardfvbjgfrtavhdimdbshajakiugbn

我使用了一个秘密短语和 API 密钥进行加密,这就是加密密钥。

*** Test Cases ***
decrypt
  ${APIKEY}   Secure.Decrypt   ${secret_phrase}  ${encrypted_Key} 
  Should Not Be Empty   ${APIKEY}  shell=no
  Set Suite Variable   ${APIKEY}   shell=no

在这个关键字中,我传递了秘密短语和加密密钥,因此我得到了 APIKEY。

#APIKEY 结果打印在控制台中,我不希望它打印在控制台中,有什么办法吗?

安慰:

${APIKEY}= asdfghjkl
4

1 回答 1

0

您可以使用Set Log Level禁用测试用例关键部分中的所有日志记录。该关键字将返回以前的日志级别,您可以将其存储在变量中,然后您可以稍后使用它来恢复原始日志级别。

将日志阈值设置为指定级别并返回旧级别。

低于该级别的消息将不会被记录。默认的日志记录级别是 INFO,但可以使用命令行选项覆盖它 --loglevel

可用级别:TRACE、DEBUG、INFO(默认)、WARN、ERROR 和 NONE(无日志记录)。

一个例子:

*** Variables ***
${secret_phrase}    abcdefghij        
${encrypted_Key}    ardfvbjgfrtavhdimdbshajakiugbn


*** Test Case ***
decrypt
    ${old log level}=    Set Log Level    NONE    # disable logging
    ${APIKEY}   Set Variable    ${secret_phrase}_${encrypted_Key}
    Should Not Be Empty   ${APIKEY}
    Set Suite Variable   ${APIKEY}
    Set Log Level    ${old log level}    # enable logging
    ${public}=    Set Variable     This variable can be visible.

在这里您可以看到两次Set Log Level调用之间没有记录任何内容,但在INFO恢复原始日志级别 ( ) 后,日志记录又开始工作了。

在此处输入图像描述

于 2021-01-07T11:06:54.377 回答