sofastack / sofa-acts Goto Github PK
View Code? Open in Web Editor NEWACTS is a white box testing framework based on data model drivers.
Home Page: https://www.sofastack.tech/sofa-acts/docs/Home
License: Apache License 2.0
ACTS is a white box testing framework based on data model drivers.
Home Page: https://www.sofastack.tech/sofa-acts/docs/Home
License: Apache License 2.0
2018.2 用不了,没有官网的一些选项。
java.lang.NullPointerException
at com.alipay.acts.helper.core.dialog.GenScriptDialog.onOK(GenScriptDialog.java:184)
at com.alipay.acts.helper.core.dialog.GenScriptDialog.access$000(GenScriptDialog.java:48)
at com.alipay.acts.helper.core.dialog.GenScriptDialog$1.actionPerformed(GenScriptDialog.java:80)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at com.chrisrm.idea.ui.MTButtonUI$ButtonHighlighter.mouseReleased(MTButtonUI.java:383)
at java.awt.Component.processMouseEvent(Component.java:6550)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3325)
at java.awt.Component.processEvent(Component.java:6315)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4899)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4721)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4721)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:766)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:739)
at java.awt.EventQueue$4.run(EventQueue.java:737)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:736)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:747)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:692)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:391)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
at java.awt.Dialog.show(Dialog.java:1077)
at java.awt.Component.show(Component.java:1681)
at java.awt.Component.setVisible(Component.java:1633)
at java.awt.Window.setVisible(Window.java:1014)
at java.awt.Dialog.setVisible(Dialog.java:998)
at com.alipay.acts.helper.core.action.GenScriptAction.actionPerformed(GenScriptAction.java:67)
at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:260)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:277)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$actionPerformed$0(ActionMenuItem.java:292)
at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:283)
at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:107)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:282)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$0(ActionMenuItem.java:111)
at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:88)
at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:111)
at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:120)
at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:121)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:111)
at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:524)
at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:35)
at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:546)
at java.awt.Component.processMouseEvent(Component.java:6550)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3325)
at java.awt.Component.processEvent(Component.java:6315)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4899)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4721)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4721)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:766)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:739)
at java.awt.EventQueue$4.run(EventQueue.java:737)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:736)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:747)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:692)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:391)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
我们企业里面大量的公司产品是基于ecilpse平台上的二次开发的工具, 要是能够集成到eclipse中就好了。
一个 public 方法,调用自身的很多个 private 方法。
这时候,我们能够 mock 掉自身的 private 方法,让我们,只关注于当前方法的 测试。这个功能如何去做呢?
环境信息:
使用IDEA 2018.2.2 版本
jdk版本:
C:\Users\Administrator>java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
安装开源的IDEA com.alipay.sofa.andromeda-1.0.0-beta.zip 插件
没有一键初始化ACTS 功能。
想问下ACTS IDEA 插件的源码是否有开源计划?
非常感谢。
蚂蚁内部好像已经在使用2.0版本的ACTS了,这个2.0的版本有开源的计划吗?
被测方法:submitXXX(Long id)
测试用例里:
inputArgs:
- description: applyId
flags: {}
nodeDesc: null
nodeGroup: null
objBaseDesc: applyId
objBaseName: Long
objClass: java.lang.Long
object: 1
报错:
java.lang.IllegalArgumentException: argument type mismatch
想咨询下怎么让prepareData从yaml里读取到的类型是Long?
1.能不能增加一下测试用例yaml文件的说明文档,方便理解可以在哪些方面做增强?
2.另外想问下,被测方法内部的rpc调用我想要mock,除了使用自定义Mock,有没有可能通过yaml文件配置化设置rpc的mock结果?
ActsTestBase.findMethod 里面只根据方法名定位 没有检查出参入参类型
生成的用例路径在 .idea 目录下,正确情况应该是应用目录。
环境:
1.spring boot
2.Gradle
3.多级子工程项目
同样的项目,已测试Maven下没有问题。
1初始化框架
2生成测试用例
3测试通过
4生成第二个测试用例时报错,无法设置输入参数和返回参数。
我测试的接口如下:
Long addTeacher(ShopTeacherVO teacher)
就是简单的往数据库中插入一条记录,然后将主键值返回。
测试代码都是通过插件工具生成的。没有做修改。
测试用例的yaml配置如下:
ShopTeacherService_addTeacher_caseID_001: !!com.alipay.test.acts.model.PrepareData
args:
description: null
inputArgs:
- description: teacher
flags:
com.diantaoke.shop.school.base.api.domain.vo.ShopTeacherVO: {birthday: Y}
nodeDesc: null
nodeGroup: null
objBaseDesc: teacher
objBaseName: ShopTeacherVO
objClass: com.diantaoke.shop.school.base.api.domain.vo.ShopTeacherVO
object: !!com.diantaoke.shop.school.base.api.domain.vo.ShopTeacherVO {birthday: 1473230397944,
createTime: 1536049910000, idcardNum: null, instId: -1, introduction: test_introduction,
name: test, phone: '180xx24xx01', photoUrl: 'http://pic.xxxx.com/1fffff.gif',
sex: 1, sorts: !!java.math.BigDecimal '1', summary: test_summary, teacherId: 1,
teacherStatus: 1, updateTime: 1536049910000}
depDataSet:
description: null
virtualTables: []
description: 新增ShopTeacherService_addTeacher_TemplateCase
expectDataSet:
description: null
virtualTables:
- dataObjClazz: null
flags: {teacher_id: C, inst_id: Y, name: Y, phone: Y, sex: Y, birthday: Y, summary: Y,
teacher_status: Y, idcard_num: Y, photo_url: Y, introduction: N, sorts: N,
create_time: Y, update_time: Y}
nodeDesc: null
nodeGroup: null
tableBaseDesc: t_shop_teacher
tableData:
- {teacher_id: '1', inst_id: '-1', name: test, phone: '180xx24xx01', sex: '1',
birthday: '1473230397944', summary: test_summary, teacher_status: '1', idcard_num: '',
photo_url: 'http://pic.xxxx.com/1fffff.gif',
introduction: test_introduction, sorts: '1', create_time: '1536049910000',
update_time: '1536049910000'}
tableName: t_shop_teacher
expectEventSet:
description: null
virtualEventObjects: []
expectException:
description: null
exceptionClass: null
expectException:
description: null
flags: {}
nodeDesc: null
nodeGroup: null
objBaseDesc: null
objBaseName: null
objClass: null
object: null
expectExceptionObject: null
expectResult:
description: null
result:
description: null
flags: {}
nodeDesc: null
nodeGroup: null
objBaseDesc: null
objBaseName: null
objClass: java.lang.Long
object: 1
resultClazz: java.lang.Long
virtualParams:
description: null
params: {}
设置了期望db数据和期望结果校验。
执行单元测试后,数据库期望校验通过了,但是返回结果的校验失败了。日志如下:
2019-03-22 10:26:15,197] [] [INFO ] main <c.a.t.a.c.h.TestUnitHandler> -Checking DB, tables checked(TestUnitHandler.java:checkExpectDbData:240)
[2019-03-22 10:26:15,197] [] [INFO ] main <c.a.t.a.c.h.TestUnitHandler> -t_shop_teacher(TestUnitHandler.java:checkExpectDbData:246)
[2019-03-22 10:26:15,225] [] [INFO ] main <c.a.t.a.c.d.DBDatasProcessor> -Executing sql:select teacher_id as teacher_id,inst_id as inst_id,name as name,phone as phone,sex as sex,birthday as birthday,summary as summary,teacher_status as teacher_status,idcard_num as idcard_num,photo_url as photo_url,introduction as introduction,sorts as sorts,create_time as create_time,update_time as update_time from t_shop_teacher where (teacher_id = ? ) ,parameters:1,(DBDatasProcessor.java:doSelectAndCompare:562)
[2019-03-22 10:26:15,232] [] [INFO ] main <c.a.t.a.c.d.DBDatasProcessor> -The comparison of the db fields is successful, table:t_shop_teacher ,key:teacher_id ,value is 1 expect vaule is 1(DBDatasProcessor.java:doSelectAndCompare:788)
.......
[2019-03-22 10:26:15,242] [] [INFO ] main <c.a.t.a.c.h.TestUnitHandler> -Checking Events(TestUnitHandler.java:checkExpectEvent:298)
[2019-03-22 10:26:15,243] [] [INFO ] main <c.a.t.a.c.h.TestUnitHandler> -Skip event check in rpc mode(TestUnitHandler.java:checkExpectEvent:379)
[2019-03-22 10:26:15,243] [] [INFO ] main <c.a.t.a.c.h.TestUnitHandler> -Checking invocation result:(DetailCollectUtils.java:appendAndLog:52)
[2019-03-22 10:26:15,243] [] [INFO ] main <c.a.t.a.c.h.TestUnitHandler> -
expect:1
actual:1(TestUnitHandler.java:checkExpectResult:275)
[2019-03-22 10:26:15,244] [] [INFO ] main <c.a.t.a.u.ObjectCompareUtil> -
expect:1
actual:1(DetailCollectUtils.java:appendAndLog:52)
[2019-03-22 10:26:15,249] [] [INFO ] main <acts-sql-logger> -Finish acts_caseId=ShopTeacherService_addTeacher_caseID_001(ActsTestBase.java:process:433)
........
java.lang.AssertionError:
check failed, actual value:1
Expected value:1
Expected :true
Actual :false
<Click to see difference>
at org.testng.Assert.fail(Assert.java:89)
at org.testng.Assert.failNotEquals(Assert.java:489)
at org.testng.Assert.assertTrue(Assert.java:37)
at com.alipay.test.acts.utils.ObjectCompareUtil.compare(ObjectCompareUtil.java:61)
at com.alipay.test.acts.component.handler.TestUnitHandler.checkExpectResult(TestUnitHandler.java:281)
at com.alipay.test.acts.template.ActsTestBase.check(ActsTestBase.java:531)
at com.alipay.test.acts.template.ActsTestBase.process(ActsTestBase.java:418)
日志上显示actual value和Expected value是一样的,但是被判定为不一致了。
用不了
acts必须配合sofa使用吗?可以是普通的spring或者springboot项目吗?
创建一个复合对象类ResultSupport,通过该类方法生成模型对象,修改测试脚本里选择通过模板创建自定义参数,保存后复合对象直接被设置为null
public class ResultSupport implements Serializable {
private static final long serialVersionUID = 1L;
private boolean success = false;
private SubmitAlipayOrderResultDTO dataObject;
private String code;
private String message;
public boolean isSuccess() {
return this.success;
}
}
问题1:
表名:xxx_123123123
实际模板名:xxx_.csv
期望模板名:xxx_123123123.csv
问题2:
生成的模板中的comment字段,没有获取到DB表的备注信息
环境:
maven:3.5
idea:201801
系统:windows 10
##sofa-acts按照快速开始搭建测试 case 报错
你好,按照sofa-acts的框架准备和快速开始搭建之后,找到需要生成用例的接口,点击右键,点击生成测试用例之后,报NPE,
以下是 stack
java.lang.NullPointerException
at com.alipay.acts.helper.core.dialog.GenScriptDialog.onOK(GenScriptDialog.java:184)
at com.alipay.acts.helper.core.dialog.GenScriptDialog.access$000(GenScriptDialog.java:48)
at com.alipay.acts.helper.core.dialog.GenScriptDialog$1.actionPerformed(GenScriptDialog.java:80)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6550)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3325)
at java.awt.Component.processEvent(Component.java:6315)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4899)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4721)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4721)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:766)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:739)
at java.awt.EventQueue$4.run(EventQueue.java:737)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:736)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:757)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:702)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:375)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
at java.awt.Dialog.show(Dialog.java:1077)
at java.awt.Component.show(Component.java:1681)
at java.awt.Component.setVisible(Component.java:1633)
at java.awt.Window.setVisible(Window.java:1014)
at java.awt.Dialog.setVisible(Dialog.java:998)
at com.alipay.acts.helper.core.action.GenScriptAction.actionPerformed(GenScriptAction.java:67)
at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:261)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:278)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$actionPerformed$0(ActionMenuItem.java:292)
at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:283)
at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:107)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:282)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$0(ActionMenuItem.java:111)
at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:88)
at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:111)
at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:120)
at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:121)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:111)
at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:524)
at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:35)
at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:546)
at java.awt.Component.processMouseEvent(Component.java:6550)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3325)
at java.awt.Component.processEvent(Component.java:6315)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4899)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4721)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4721)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:766)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:739)
at java.awt.EventQueue$4.run(EventQueue.java:737)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:736)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:757)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:702)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:375)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
以下是搭建框架的截图,左侧是测试工程,右侧是需要测试的接口,帮忙看看具体是什么问题,期待回复
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.