#本地环境#
Pycharm:2023.12 Pro
对应robot pkg版本:
robotframework 6.1
robotframework-databaselibrary 1.2.4
robotframework-pythonlibcore 4.1.2
robotframework-requests 0.9.4
robotframework-seleniumlibrary 6.1.0
#Issue1#
当在Plugins搜索、安装 IntelliBot #patched,重启后,Pycharm无法打开原有工程文件
com.intellij.diagnostic.PluginException: Short name 'RobotKeywordNotFound' is not unique
class 'com.github.jnhyperion.hyperrobotframeworkplugin.ide.inspections.compilation.RobotKeywordNotFound' in PluginDescriptor(name=Hyper RobotFramework Support, id=com.github.jnhyperion.hyperrobotframeworkplugin, descriptorPath=plugin.xml, path=~\AppData\Roaming\JetBrains\PyCharm2023.2\plugins\Hyper RobotFramework Support, version=0.1.11, package=null, isBundled=false)
and class 'com.millennialmedia.intellibot.ide.inspections.compilation.RobotKeywordNotFound' in PluginDescriptor(name=IntelliBot #patched, id=com.millennialmedia.intellibot@lte2000, descriptorPath=plugin.xml, path=~\AppData\Roaming\JetBrains\PyCharm2023.2\plugins\intellibot.jar, version=0.16.191.8026, package=null, isBundled=false)
conflictat com.intellij.codeInspection.ex.InspectionToolRegistrarKt.checkForDuplicateShortName(InspectionToolRegistrar.kt:178)at com.intellij.codeInspection.ex.InspectionToolRegistrarKt.registerInspection(InspectionToolRegistrar.kt:137)at com.intellij.codeInspection.ex.InspectionToolRegistrarKt.access$registerInspection(InspectionToolRegistrar.kt:1)at com.intellij.codeInspection.ex.InspectionToolRegistrar.registerInspections(InspectionToolRegistrar.kt:69)at com.intellij.codeInspection.ex.InspectionToolRegistrar.<init>(InspectionToolRegistrar.kt:51)at com.intellij.serviceContainer.ComponentManagerImpl.doInstantiateClass(ComponentManagerImpl.kt:962)at com.intellij.serviceContainer.ComponentManagerImpl.instantiateClass(ComponentManagerImpl.kt:954)at com.intellij.serviceContainer.ComponentManagerImpl.createLightService(ComponentManagerImpl.kt:933)at com.intellij.serviceContainer.ComponentManagerImpl.getOrCreateLightService(ComponentManagerImpl.kt:736)at com.intellij.serviceContainer.ComponentManagerImpl.doGetService(ComponentManagerImpl.kt:688)at com.intellij.serviceContainer.ComponentManagerImpl.getService(ComponentManagerImpl.kt:630)at com.intellij.codeInspection.ex.InspectionToolRegistrar$Companion.getInstance(InspectionToolRegistrar.kt:209)at com.intellij.codeInspection.ex.ApplicationInspectionProfileManagerBase$schemeManager$1.createScheme(ApplicationInspectionProfileManagerBase.kt:59)at com.intellij.codeInspection.ex.ApplicationInspectionProfileManagerBase$schemeManager$1.createScheme(ApplicationInspectionProfileManagerBase.kt:51)at com.intellij.configurationStore.LazySchemeProcessor.createScheme$default(scheme-impl.kt:63)at com.intellij.configurationStore.schemeManager.SchemeLoader.loadScheme(schemeLoader.kt:182)at com.intellij.configurationStore.schemeManager.SchemeManagerImpl.loadSchemes(SchemeManagerImpl.kt:261)at com.intellij.codeInspection.ex.ApplicationInspectionProfileManagerBase$profilesAreInitialized$2.invoke(ApplicationInspectionProfileManagerBase.kt:84)at com.intellij.codeInspection.ex.ApplicationInspectionProfileManagerBase$profilesAreInitialized$2.invoke(ApplicationInspectionProfileManagerBase.kt:77)at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)at com.intellij.codeInspection.ex.ApplicationInspectionProfileManagerBase.getProfilesAreInitialized(ApplicationInspectionProfileManagerBase.kt:77)at com.intellij.codeInspection.ex.ApplicationInspectionProfileManagerBase.initProfiles(ApplicationInspectionProfileManagerBase.kt:103)at com.intellij.codeInspection.ex.ApplicationInspectionProfileManagerBase.getCurrentProfile(ApplicationInspectionProfileManagerBase.kt:131)at com.intellij.profile.codeInspection.ProjectInspectionProfileManager.getCurrentProfile(ProjectInspectionProfileManager.kt:238)at com.intellij.configurationScript.inspection.ExternallyConfigurableProjectInspectionProfileManager.getCurrentProfile(ExternallyConfigurableProjectInspectionProfileManager.kt:69)at com.intellij.profile.codeInspection.ProjectInspectionProfileManager.initializeComponent(ProjectInspectionProfileManager.kt:98)at com.intellij.configurationStore.ComponentStoreImpl.initComponent(ComponentStoreImpl.kt:133)at com.intellij.configurationStore.ComponentStoreWithExtraComponents.initComponent(ComponentStoreWithExtraComponents.kt:48)at com.intellij.serviceContainer.ComponentManagerImpl.initializeComponent$intellij_platform_serviceContainer(ComponentManagerImpl.kt:577)at com.intellij.serviceContainer.ServiceComponentAdapter.createAndInitialize(ServiceComponentAdapter.kt:51)at com.intellij.serviceContainer.ServiceComponentAdapter.doCreateInstance(ServiceComponentAdapter.kt:43)at com.intellij.serviceContainer.BaseComponentAdapter.doCreateInstance(BaseComponentAdapter.kt:158)at com.intellij.serviceContainer.BaseComponentAdapter.createInstance(BaseComponentAdapter.kt:137)at com.intellij.serviceContainer.BaseComponentAdapter.access$createInstance(BaseComponentAdapter.kt:21)at com.intellij.serviceContainer.BaseComponentAdapter$getInstanceAsync$2.invokeSuspend(BaseComponentAdapter.kt:185)at com.intellij.serviceContainer.BaseComponentAdapter$getInstanceAsync$2.invoke(BaseComponentAdapter.kt)at com.intellij.serviceContainer.BaseComponentAdapter$getInstanceAsync$2.invoke(BaseComponentAdapter.kt)at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:78)at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:167)at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)at com.intellij.serviceContainer.BaseComponentAdapter.getInstanceAsync(BaseComponentAdapter.kt:180)at com.intellij.serviceContainer.ComponentManagerImpl.preloadService$suspendImpl(ComponentManagerImpl.kt:1162)at com.intellij.serviceContainer.ComponentManagerImpl.preloadService(ComponentManagerImpl.kt)at com.intellij.serviceContainer.ComponentManagerImpl$preloadServices$1.invokeSuspend(ComponentManagerImpl.kt:1146)at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
尝试办法1:
把本地的Hyper RobotFramework Support(二者冲突)插件卸载,重新本地安装jar文件/或者搜索安装 IntelliBot #patched,重启ok。
尝试办法2:
手动安装 intellibot.jar 文件并重启GitHub - mtrubs/intellibot: IntelliJ/PyCharm plugin for Robot Automation Framework
重启后报错:
#Issue2# 配置External Tools后,“Run Case” 执行报错
...\AppData\Local\Programs\Python\Python310\Scripts\rebot.exe --loglevel TRACE:TRACE --variable country:DIY --variable env:Test --variable driver:gc --variable device_type:***
[ ERROR ] option --variable not recognized
Try --help for usage information.
下载插件,直接在marketplace里面下载即可intellibot可以使用第二张图的那个插件(这里推荐使用pycharm早一点的版本,否则可能会由于插件还未及时升级导致兼容性问题)? -->对比安装2022.1,依然存在此问题,非版本导致
正常使用了:
把配置的Run Case 和 Run Suite重新添加后,可正常执行