Có vẻ như tài liệu cho MongoDB-1.1.0GA đang lỗi thời khi nói đến kiểm tra đơn vị phần: http://springsource.github.com/grails-data-mapping/mongo/manual/ref/Testing/DatastoreUnitTestMixin.htmlCó phải thử nghiệm đơn vị các thuộc tính động mongodb có thể có trong Grails 2.2 không?
Tiếp theo đang
@TestFor(Employee)
class EmployeeTests extends GroovyTestCase {
void setUp() {
}
void tearDown() {
}
void testSomething() {
mockDomain(Employee)
def s = new Employee(firstName: "first name", lastName: "last Name", occupation: "whatever")
s['testField'] = "testValue"
s.save()
assert s.id != null
s = Employee.get(s.id)
assert s != null
assert s.firstName == "first name"
assert s['testField'] == "testValue"
}
}
thất bại với lỗi này:
No such property: testField for class: Employee
class Employee là khá đơn giản:
class Employee {
String firstName
String lastName
String occupation
static constraints = {
firstName blank: false, nullable: false
lastName blank: false, nullable: false
occupation blank: false, nullable: false
}
}
Vậy, có phải thử nghiệm đơn vị thuộc tính động có thể không? Nếu có, làm thế nào?
Ứng dụng có tạo ra thứ gì đó tĩnh không? Tôi nhận được cùng một giá trị cho tất cả các mục nếu tôi đặt nó cho một! –
Yep sai lầm của tôi. Sử dụng vòng lặp 'for' để làm điều đó (tôi viết blog về lý do tại sao tại đây http://blog.freeside.co/2013/03/29/groovy-gotcha-for-loops-and-closure-scope/) Tôi sẽ cập nhật câu trả lời –
Tôi đã chỉnh sửa câu trả lời của bạn !, điều đó phù hợp với tôi! Hãy chấp nhận hoặc từ chối câu trả lời của tôi! Và tôi nghĩ rằng u tốt hơn cập nhật blog ur quá! –