Files
mip/tests/webmipintegrationteststart.rb
2008-02-05 16:04:35 +00:00

104 lines
2.6 KiB
Ruby

#requires
require 'watir'
#require our constants
require 'constants'
#require our useful helper methods
require 'default_methods.rb'
#email stuff
require 'net/smtp'
#require the test unit library
require 'test/unit'
require 'test/unit/ui/console/testrunner'
require 'test/unit/testsuite'
#include the integration test cases
require 'login_tests'
require 'exportdatatests'
#includes
include Watir
@@ie = IE.new
@@ie.maximize
#set the speed of watir, we'd also set the speed of light but that's supposed to be a constant
@@ie.speed = :fast
#
# Setup default config
#
# Remove the test data
#
#dosql('begin cleanup_testdata; commit; end;')
#
# Set the system submission deadline
#
#dosql('begin UPDATE system_configuration SET value = \'20:00\'
# WHERE parameter = \'G_SUBMISSION_DEADLINE\'; commit; end; ')
#
#Set up our contracts before we start serious testing
#
#require 'usefulscriptthatmightsetupdata'
#
#Get our individual integration tests
#
class WebMipIntegrationTests
def self.suite
suite = Test::Unit::TestSuite.new('webMIP Integration tests')
suite << Test_01_login_screen.suite
suite << Test_02_enquiry.suite
suite << Test_03_housings_screen.suite
suite << Test_04_drawings_screen.suite
suite << Test_05_base_screen.suite
suite << Test_06_addon_screen.suite
suite << Test_07_export_data.suite
suite << Test_08_modules_screen.suite
suite << Test_09_MIPADMIN_party_management.suite
suite << Test_10_SUPPADMIN_party_management.suite
suite << Test_11_edit_parties.suite
#copy the line above, inserting your test to add
#more testcases into the integration test suite
return suite
end
end
#set output from test runner to be verbose and output to a iostring
sio = StringIO.new
tr = Test::Unit::UI::Console::TestRunner.new(
WebMipIntegrationTests, Test::Unit::UI::VERBOSE, sio )
#Set the test runner off
passed = tr.start()
#if we have some test failures or errors then send the email
if (passed.failure_count() > 0 or passed.error_count() > 0)
#build the email
from_addr = 'jamie.priest@advantica.com'
to_addr = 'jamie.priest@advanticagroup.com'
project = 'webMIP'
errors = sio.string
emailtext = <<END_EMAIL
From: webMIP <#{from_addr}>
To: Jamie Priest <#{to_addr}>
Subject: #{project} automated test failure
An automated assertion failed for the project
#{project}
#{errors}
END_EMAIL
Net::SMTP.start('LOMAIL01') do |smtp|
smtp.sendmail emailtext, from_addr, to_addr
end
end
@@ie.wait
@@ie.close