1、参与 Appium 文档翻译计划
https://www.kancloud.cn/testerhome/appium_docs_cn
https://github.com/testerhome/appium/commit/8e4810fe335284e3df97ec855b663431232915aa
2、荣获 2 项政府荣誉
3、当选省技术委员会委员
4、入选中山市双领域专家

  • 图个乐子,瞎聊 at 2024年11月14日

    个人觉得挺不错的

    1. 正则表达式中,什么是贪婪匹配、什么是非贪婪匹配。
      • 贪婪匹配:在正则表达式中,默认情况下,量词(如*+?)会尽可能多地匹配字符,这称为贪婪匹配。
      • 非贪婪匹配:通过在量词后面加上?,可以使量词变为非贪婪匹配,即尽可能少地匹配字符。
    • 示例代码

      import re
      # 贪婪匹配
      greedy_match = re.findall(r'\d+', '123abc456def789')
      print(greedy_match)  # 输出 ['123456789']
      
      # 非贪婪匹配
      non_greedy_match = re.findall(r'\d+?', '123abc456def789')
      print(non_greedy_match)  # 输出 ['123', '456', '789']
      
    1. 正则表达式中,search() 和 match() 的区别。
      • search():在字符串中搜索正则表达式的第一次出现,并返回一个匹配对象。如果没有找到匹配,则返回None
      • match():仅从字符串的开始位置匹配正则表达式,如果开始位置没有匹配,则返回None
    • 示例代码

      import re
      # search() 示例
      search_result = re.search(r'foo', 'bar foo baz')
      print(search_result.group())  # 输出 'foo'
      
      # match() 示例
      match_result = re.match(r'foo', 'bar foo baz')
      print(match_result)  # 输出 None
      
    1. 介绍一下 udp 和 tcp 协议。

      • UDP(用户数据报协议):无连接的协议,提供快速但不可靠的数据传输,适用于对实时性要求高的应用,如视频会议和在线游戏。
      • TCP(传输控制协议):面向连接的协议,提供可靠的数据传输服务,确保数据按顺序、无误地到达目的地,适用于需要可靠传输的应用,如网页浏览和文件传输。
    2. get 和 post 的根本区别。(划重点:根本)

      • GET:用于请求数据,通常用于获取服务器上的资源,数据附在 URL 后面,对数据长度有限制,不安全(因为数据在 URL 中可见),且可被缓存。
      • POST:用于向服务器提交数据,数据包含在请求体中,对数据长度没有限制,相对安全(数据不在 URL 中),且不会被缓存。
    3. 介绍一下自动化实现的步骤。

      • 需求分析:明确自动化测试的目标和范围。
      • 测试计划:制定测试策略和计划。
      • 环境搭建:准备测试环境和所需的工具。
      • 脚本开发:编写自动化测试脚本。
      • 脚本执行:运行自动化脚本,执行测试。
      • 结果验证:检查测试结果是否符合预期。
      • 报告和维护:生成测试报告,并对脚本进行维护和更新。
    4. UI 自动化过程中用到哪些定位元素的方法。

      • ID 定位
      • Name 定位
      • Class Name 定位
      • Tag Name 定位
      • XPath 定位
      • CSS Selector 定位
      • Link Text 定位
      • Partial Link Text 定位
    5. UI 自动化中,用到哪些等待方式。

      • 显式等待(Explicit Wait):指定等待某个条件成立后再继续执行。
      • 隐式等待(Implicit Wait):设置一个超时时间,让 WebDriver 等待某个条件成立。
      • 睡眠等待(Sleep):让程序暂停执行一定时间。
    • 示例代码(使用 Selenium):

      from selenium import webdriver
      from selenium.webdriver.common.by import By
      from selenium.webdriver.support.ui import WebDriverWait
      from selenium.webdriver.support import expected_conditions as EC
      
      driver = webdriver.Chrome()
      driver.get("http://example.com")
      try:
          element = WebDriverWait(driver, 10).until(
              EC.presence_of_element_located((By.ID, "myDynamicElement"))
          )
      finally:
          driver.quit()
      
    1. 用 python 操作 excel。
    • 使用openpyxl库操作 Excel 示例代码:

      from openpyxl import Workbook
      
      # 创建一个新的Excel工作簿
      wb = Workbook()
      # 选择默认的工作表
      ws = wb.active
      # 给工作表命名
      ws.title = "Sample Sheet"
      
      # 写入数据
      ws.append(["ID", "Name", "Score"])
      ws.append([1, "John", 85])
      ws.append([2, "Doe", 90])
      
      # 保存工作簿到文件
      wb.save("sample.xlsx")
      
    1. session cookie、token、的区别。

      • Session Cookie:服务器生成的唯一识别码,存储在用户的浏览器中,用于识别用户状态。
      • Token:一种令牌,通常在用户登录后由服务器生成,用于验证用户身份,可以存储在客户端或服务端。
    2. 介绍一下自己的优势。

      • 这部分是个人自我介绍,可以根据您的个人特点和优势来回答。
    3. 判断 ipV4 的合法性。(代码实操)

    - 示例代码

    def is_valid_ipv4(ip):
        # 将输入的IP地址字符串按照点`.`分割成四部分
        parts = ip.split(".")
        # 检查分割后的结果是否正好有四部分,因为IPv4地址必须有四组数字
        if len(parts) != 4:
            return False
        # 遍历这四部分
        for part in parts:
            # 检查每部分是否都是数字
            if not part.isdigit():
                return False
            # 将每部分转换为整数,并检查是否在0到255的范围内
            if not 0 <= int(part) <= 255:
                return False
        # 如果所有检查都通过,说明IP地址是有效的
        return True
    

    接下来是两个测试用例:

    1. print(is_valid_ipv4("192.168.1.1")):这个测试用例检查字符串"192.168.1.1"是否是一个有效的 IPv4 地址。每组数字都在 0 到 255 之间,所以这个函数应该返回True

    2. print(is_valid_ipv4("256.100.50.25")):这个测试用例检查字符串"256.100.50.25"是否是一个有效的 IPv4 地址。第一组数字256超出了 0 到 255 的范围,所以这个函数应该返回False

    这个函数通过简单的字符串操作和条件检查来验证 IPv4 地址的有效性,但它不会处理一些边缘情况,比如前导零(例如"01.0.0.0")或者空字符串(例如".1.2.3")。对于更健壮的 IPv4 地址验证,可能需要更复杂的正则表达式或其他方法。

  • 你用这个浏览器插件试试看,edge 就有

  • 你只要不主动走就行,他开了你,就要给赔偿。你做好你份内的事情,其他不要瞎操心。

  • 啃爹的滴滴 - 出租车司机 at 2024年11月04日

    笑死我了,哈哈哈

  • 测试软考中级有必要考吗 at 2024年10月28日

    个人觉得有必要,我一直想考信息系统项目管理师,一直都没动起来,惰性。

  • 可以考虑去传统制造业试试机会

  • 图全挂了

  • 测试最终的归宿是什么? at 2024年08月21日

    就去参加所在街道或者当地政府授权的培训机构开设的课程,然后考试通过以后拿到技能等级证书。

  • 测试最终的归宿是什么? at 2024年08月21日

    拓展一下学习边界,我的意思是说,在做好软件测试的本职工作的前提和基础之上,去主动学习跨行业的技能知识,比如我先后去考了电子商务师,互联网营销师,家庭收纳师等技能等级证书,最起码以后能有个后路,不至于一直在互联网圈子里内卷。

1、参与 Appium 文档翻译计划
https://www.kancloud.cn/testerhome/appium_docs_cn
https://github.com/testerhome/appium/commit/8e4810fe335284e3df97ec855b663431232915aa
2、荣获 2 项政府荣誉
3、当选省技术委员会委员
4、入选中山市双领域专家