如何解决参数中隐含的Scala
我正在为不同的Android和IOS设备上的测试设置编写一些自动化测试,我想在ADT上创建一个方法,该方法返回适合特定平台的定位器。
final case object HomeMenu extends MenuPoint {
override def locator(implicit platform: Platform): String = platform match {
case Base.Android => "AndroidWidget"
case Base.Apple => "Apple ID"
case browser: Base.Browser => ""
}
}
我正在使用两个参数构建adt,即给定的TestDevice和我正在测试的应用的品牌。
品牌是adt的构建地,adt中每个可点击的元素都具有方法定位符。
所以我想要的是我可以将TestDevice作为参数,然后为我处理隐式,因此我不必将locator作为参数提供给locator方法。
println(MainAppAdt(AndroidSmartPhone("Galaxy S9+"),WebTv).brand.menu.head.locator)
println(MainAppAdt(AppleSmartPhone("iPhone X"),WebTv).brand.menu.head.locator)
我已经尝试为AndroidSmartPhone和AppleSmartPhone创建一个伴随对象,并在其中存储了隐式对象。但看起来只需要其中之一
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。