Java 在使用TestNG和Cucumber运行代码时获取空指针异常?

Java 在使用TestNG和Cucumber运行代码时获取空指针异常?,java,cucumber,testng,Java,Cucumber,Testng,运行我的代码时获取“空指针异常” 在@BeforeSuite方法内的TestRunner类中初始化的驱动程序实例不会在SignIn类中自动检索。您应该创建一个getter方法来从TestRunner获取驱动程序对象以登录类,或者使用继承概念来获取驱动程序。这就是您获得NullPointerException的原因。您正试图访问未在SignIn类中初始化的驱动程序对象。来自review。文本的格式。它们不能被搜索或复制,可用性差。相反,将代码作为文本直接粘贴到问题中。标记问题无法解决。请直接在此

运行我的代码时获取“空指针异常”


在@BeforeSuite方法内的TestRunner类中初始化的驱动程序实例不会在SignIn类中自动检索。您应该创建一个getter方法来从TestRunner获取驱动程序对象以登录类,或者使用继承概念来获取驱动程序。这就是您获得NullPointerException的原因。您正试图访问未在SignIn类中初始化的驱动程序对象。

来自review。文本的格式。它们不能被搜索或复制,可用性差。相反,将代码作为文本直接粘贴到问题中。标记问题无法解决。请直接在此处发布代码,而不是发布代码链接。好的。我会做更多的事情。但我有一个疑问,我应该启动每一个类吗?@VinothSelvam no驱动程序初始化应该只做一次。但是,如果您并行运行测试,那么每个线程都应该有自己的驱动程序实例(在这种情况下,应该为每个线程分别初始化和维护驱动程序)。您可以使用getter方法获取案例中需要的驱动程序实例。如果您使用的是并行,那么请尝试使用Threadlocal数据类型来维护驱动程序实例。在谷歌上对此进行更多研究。