欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > 基于截图和模拟点击的自动化压测工具开发(MFC)

基于截图和模拟点击的自动化压测工具开发(MFC)

2024/10/25 2:20:50 来源:https://blog.csdn.net/xy18990/article/details/139438710  浏览:    关键词:基于截图和模拟点击的自动化压测工具开发(MFC)
1.背景

想对一个MFC程序做自动压测功能,根据判断程序界面某块区域是否达到预定状态,来自动执行鼠标点击或者键盘输入的操作,以解决测试人员需要重复手动压测问题。

1.涉及的技术

串口控制,基于MFC橡皮筋类(CRectTracker)做一个简单的截图对话框,GDI,模拟鼠标点击(mouse_event),模拟键盘输入(keybd_event),MD5等

2.串口控制继电器上下电

如何你要压测的程序需要通过控制USB上下电,可用串口控制继电器来达到此目的。

  • 以下是串口初始化的代码
bool CComTest::InitialCom(int iComID, int iComPort, DWORD iBaudRate)
{if (iComPort < 1 || iComPort > 255){return FALSE;}if (INVALID_HANDLE_VALUE != m_hCom){CloseCom(iComID);}if (INVALID_HANDLE_VALUE != m_hCom){CloseHandle(m_hCom);}m_iComPort = iComPort;      //串口通信端口m_iBaudRate = iBaudRate;    //串口通信速率DCB Dcb;CString str;COMMTIMEOUTS TimeOut;int Data = 8;int Stop = 0;int Parity = 0;str.Format(_T("COM%d"), iComPort);m_hCom = CreateFile(str, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, NULL, NULL);if (m_hCom == INVALID_HANDLE_VALUE){return FALSE;}GetCommState(m_hCom, &Dcb);Dcb.BaudRate = iBaudRate;Dcb.ByteSize = Data;Dcb.StopBits = Stop;Dcb.Parity = Parity;if (!SetCommState(m_hCom, &Dcb)){CloseHandle(m_hCom);m_hCom[iComID] = INVALID_HANDLE_VALUE;return FALSE;}memset(&TimeOut, 0, sizeof(TimeOut));TimeOut.ReadIntervalTimeout = MAXDWORD;SetCommTimeouts(m_hCom[iComID], &TimeOut);SetupComm(m_hCom, 1024, 1024);PurgeComm(m_hCom, PURGE_TXABORT | PURGE_RXABORT | PURGE_TXCLEAR | PURGE_RXCLEAR);return TRUE;
}
  • 读取串口:
  • </

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com