2011-03-10 12 views
8

मैं चलाएँ:रेल 3: सरल परीक्षण चलाने पर रेल डेटाबेस को मान डालने का प्रयास क्यों करता है?

ruby -I test test/unit/job_test.rb 
अपने आवेदन रूट निर्देशिका से

, और मैं मिलता है:

Loaded suite test/unit/job_test 
Started 
E 
Finished in 2.046875 seconds. 

1) Error: 
    test_My_First_Test(JobTest): 
    ActiveRecord::RecordNotUnique: Mysql2::Error: Duplicate entry '' 
    for key 'name': 
    INSERT INTO `ac_buyers` (`created_at`, `updated_at`, `id`) VALUES 
    ('2011-03-10 06:04:06', '2011-03-10 06:04:06', 298486374) 

यहाँ क्या हो रहा है?

रेल क्यों डेटाबेस में मान डालने का प्रयास करते हैं?

यहाँ test/unit/job_test.rb है:

require 'test_helper' 
class JobTest < ActiveSupport::TestCase 
    test "My First Test" do 
    assert false 
    end 
end 

उत्तर

10

ऐसा लगता है कि इस रेल जुड़नार है। परीक्षण/फिक्स्चर में देखें और आप परीक्षणों के परीक्षण के लिए अपने परीक्षण डेटाबेस डब्ल्यू/डेटा को बीज करने के लिए रेल द्वारा उत्पन्न कुछ फाइलें देखेंगे। जब आप अपने परीक्षण चलाते हैं तो रेल उन्हें आपके परीक्षण डीबी में डालेंगे।

+0

धन्यवाद! वास्तव में डिफ़ॉल्ट फिक्स्चर खाली हैं, जो त्रुटि का कारण बनता है। –

+0

रेल में समान समस्या थी 4. रनिंग के बाद जोड़ा गया बाधा 'रेल जी ...' और परीक्षण करते समय त्रुटि फेंक रहा था। नई बाधा के लिए खाते में स्थिरता अद्यतन करना था। –

संबंधित मुद्दे