如何解决在Selenium php-webdriver中获取元素的外部HTML
在PHPUnit / Extensions / Selenium2TestCase中,可以通过在元素上调用import SwiftUI
struct DetailView: View {
@Environment(\.managedObjectContext) var moc
@ObservedObject var myItem: Item
var body: some View {
VStack {
Text(myItem.name ?? "Unknown")
Image(uiImage: UIImage(data: myItem.photo!) ?? UIImage(named: "gray_icon")!)
.resizable()
.aspectRatio(contentMode: .fill)
.frame(minWidth: 0,maxWidth: .infinity,minHeight: 0,maxHeight: 300,alignment: Alignment.center)
.clipped()
}
.navigationBarTitle(Text(myItem.name ?? "Unknown"),displayMode: .inline)
}
}
struct DetailView_Previews: PreviewProvider {
static let moc = NSManagedObjectContext(concurrencyType: .mainQueueConcurrencyType)
static var previews: some View {
let item = Item(context: moc)
item.name = "Test"
return NavigationView {
DetailView(myItem: item)
}
}
}
方法并传入'outerHTML'来获取元素的外部HTML。但是,在php-webdriver中,这是不可能的,因为'outerHTML'对于import SwiftUI
import Combine
struct ImagePicker : UIViewControllerRepresentable {
@Binding var show : Bool
@Binding var image : Data
func makeCoordinator() -> ImagePicker.Coordinator {
return ImagePicker.Coordinator(child1: self)
}
func makeUIViewController(context: UIViewControllerRepresentableContext<ImagePicker>) -> UIImagePickerController {
let picker = UIImagePickerController()
picker.sourceType = .photoLibrary
picker.delegate = context.coordinator
return picker
}
func updateUIViewController(_ uiViewController: UIImagePickerController,context: UIViewControllerRepresentableContext<ImagePicker>) {
}
class Coordinator : NSObject,UIImagePickerControllerDelegate,UINavigationControllerDelegate {
var child : ImagePicker
init(child1: ImagePicker) {
child = child1
}
func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
self.child.show.toggle()
}
func imagePickerController(_ picker: UIImagePickerController,didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
let image = info[.originalImage]as! UIImage
let data = image.jpegData(compressionQuality: 0.45)
self.child.image = data!
self.child.show.toggle()
}
}
}
方法来说不是有效的属性值。
我将如何获取元素的外部HTML?我考虑过要获取父元素的内部HTML(使用attribute()
方法);但是,如果该元素有多个子元素,那么我将获得所有这些子元素的外部HTML,而不仅仅是我感兴趣的那个子元素。我喜欢this question(克隆元素,并将其添加到不在DOM中的DIV元素中,并获取该DIV元素的内部HTML);但是,这个问题涉及JavaScript和jQuery,而我的问题涉及PHP和php-webdriver,在这种情况下似乎没有任何方法可以实现。
更新:调试我的代码后,发现getAttribute()
方法实际上并没有返回HTML,尽管文档暗示了这一点(相反,它似乎返回了文本内容)元素及其所有后代),因此似乎即使在php-webdriver框架中获取元素的内部HTML也是有问题的。
在此框架中,是否有任何方法来获取元素的内部或外部HTML? (我在文档中找不到任何内容。)如果没有,人们将如何在框架之外进行操作,最好使用框架API提供的元素?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。