Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...
Топ:
Выпускная квалификационная работа: Основная часть ВКР, как правило, состоит из двух-трех глав, каждая из которых, в свою очередь...
Оценка эффективности инструментов коммуникационной политики: Внешние коммуникации - обмен информацией между организацией и её внешней средой...
Генеалогическое древо Султанов Османской империи: Османские правители, вначале, будучи еще бейлербеями Анатолии, женились на дочерях византийских императоров...
Интересное:
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Берегоукрепление оползневых склонов: На прибрежных склонах основной причиной развития оползневых процессов является подмыв водами рек естественных склонов...
Дисциплины:
2019-08-03 | 128 |
5.00
из
|
Заказать работу |
Реализация автоматизированных скриптов
1) procedure TestTForm1.TestLogin_Button1Click_null;
var
Sender: TObject;
begin
FForm1.Button1Click(Sender);
end;
2) procedure TestTForm1.TestLogin_DoubleButton1CLick_null;
var
Sender:TObject;
begin
FForm1.Button1Click(Sender);
FForm1.Button1Click(Sender);
end;
3) procedure TestTForm2.TestButton1ClickMainMenu_Prosmort_Prosm;
var
Sender: TObject;
begin
FForm2.Button1Click(Sender);
end;
4) procedure TestTForm2.TestFormCreateMainMenu_createForm_create;
var
Sender: TObject;
begin
FForm2.FormCreate(Sender);
end;
5) procedure TestTForm2.TestButton5ClickMainMenu_FormirZakaz_Form;
var
Sender: TObject;
begin
FForm2.Button5Click(Sender);
end;
6) procedure TestTForm2.TestButton3ClickMainMenu_DeleteRow_Delete;
var
Sender: TObject;
begin
FForm2.Button3Click(Sender);
end;
7) procedure TestTForm2.TestN1ClickMainMenu_SaveBase_save;
var
Sender: TObject;
begin
FForm2.N1Click(Sender);
end;
8) procedure TestTForm2.TestN2ClickMainMenu_DeleteBase_Delete;
var
Sender: TObject;
begin
FForm2.N2Click(Sender);
end;
9) procedure TestTForm3.TestButton1ClickAdd_null_null;
var
Sender: TObject;
begin
FForm3.Button1Click(Sender);
end;
10) procedure TestTForm3.TestDoubleButton1ClickAdd_null_null;
var
Sender: TObject;
begin
FForm3.Button1Click(Sender);
FForm3.Button1Click(Sender);
end;
11) procedure TestTForm4.TestButton1ClickZakaz_null_null;
var
Sender: TObject;
begin
FForm4.Button1Click(Sender);
end;
12) procedure TestTForm4.TestDoubleButton1ClickZakaz_null_null;
var
Sender: TObject;
begin
FForm4.Button1Click(Sender);
FForm4.Button1Click(Sender);
end;
Анализ результатов тестов
Все найденные ошибки были успешно устранены.
Получившийся в результате программный продукт удовлетворяет всем предъявленным требованиям, полностью работоспособен, не требует принципиальных доработок, и готов к эксплуатации.
Отладка тестов
На рисунке 5.1 представлен результат отладки тестов.
Рисунок 4.1 - Отладка тестов
Заключение
В результате выполнения работы в теоретической части была описана требуемая предметная область, построены и описаны логическая и физическая диаграммы данных. В практической части была построена схема классов разрабатываемого приложения. Для каждого окна приложения описаны вызываемые процедуры для обработки событий. В соответствующем пункте работы написано руководство пользователя, предназначенное для быстрого освоения программного продукта будущими пользователями. Разработка приложения производилась в среде RAD STUDIO 10.3, язык разработки Delphi.
Список использованных источников
1. Культин Н.Б. «Основы программирования в Delphi 7». 2006г. с.608
2. Галисеев Г.В. «Программирование в среде Delphi 7. Самоучитель». 2004г. с.288
3. Желонкин А. «Основы программирования в интегрированной среде Delphi». 2006г. с.240
Приложение А
Листинг исходных кодов
Листинг Login.pas
unit Login;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Module, Admin;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
Button2: TButton;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button2Click(Sender: TObject);
begin
Form1.Close;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
login:string;
password:string;
pol:string;
log:string;
begin
login:='admin';
log:='';
password:='admin';
if (login=Edit1.Text) and (password=Edit2.Text) then
begin
Form2.Edit1.Text:='Администратор';
Form2.ShowModal;
Form1.Close;
end
else
if (Edit1.Text <> log) and (Edit2.Text <> log) then
begin
Form2.Button2.Enabled:= False;
Form2.Button3.Enabled:= False;
Form2.File1.Enabled:=false;
pol:=Edit1.Text;
Form2.Edit1.Text:=pol;
Form2.Edit1.ReadOnly:=True;
Form2.ShowModal;
Form1.Close;
end
else
showmessage('Пустые поля');
end;
end.
Листинг Admin.pas
unit Admin;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, Module, Add, Menus, ComObj, Zakaz;
type
TForm2 = class(TForm)
Label1: TLabel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button6: TButton;
Edit1: TEdit;
StringGrid1: TStringGrid;
Button4: TButton;
MainMenu1: TMainMenu;
File1: TMenuItem;
N1: TMenuItem;
N2: TMenuItem;
StringGrid2: TStringGrid;
Button5: TButton;
Label2: TLabel;
Label3: TLabel;
procedure Button6Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.Button6Click(Sender: TObject);
begin
Form2.Close;
end;
procedure TForm2.Button2Click(Sender: TObject);
var lastRow:Integer; summa:Double;
begin
Form3.ShowModal;
if i <> 1 then
begin
StringGrid1.RowCount:=StringGrid1.RowCount+1;
lastRow:=StringGrid1.RowCount-1;
summa:=kol*price;
StringGrid1.Cells[0, lastRow]:=Naim;
StringGrid1.Cells[1, lastRow]:=FloatToStr(Price);
StringGrid1.Cells[2, lastRow]:=FloatToStr(Kol);
StringGrid1.Cells[3, lastRow]:=FloatToStr(summa);
end;
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
with StringGrid1 do
StringGrid1.Cols[cNaim].Add('Наименование');
StringGrid1.Cols[cPrice].Add('Цена');
StringGrid1.Cols[cKol].Add('Количество');
StringGrid1.Cols[cSumma].Add('Сумма');
with StringGrid2 do
StringGrid2.Cols[cNaim].Add('Наименование заказа');
StringGrid2.Cols[cPrice].Add('Цена за 1 шт');
StringGrid2.Cols[cKol].Add('Количество товара');
StringGrid2.Cols[cSumma].Add('Сумма заказа');
end;
procedure TForm2.N1Click(Sender: TObject);
var
i, LastRow: Integer;
SList: TStringList;
begin
SList:= TStringList.Create;
LastRow:= StringGrid1.RowCount - 1;
try
for i:= 0 to LastRow do
SList.Add(StringGrid1.Rows[i].CommaText);
SList.SaveToFile('text.txt');
finally
SList.Free;
end;
end;
procedure TForm2.N2Click(Sender: TObject);
var
i: Integer;
begin
with StringGrid1 do
for i:= 0 to ColCount - 1 do
Cols[i].Clear;
end;
procedure TForm2.Button3Click(Sender: TObject);
var i, j: Integer;
begin
with StringGrid1 do
for i:=FixedCols to ColCount-1 do
for j:=FixedRows to RowCount-1 do
Cells[i, j]:='';
StringGrid1.RowCount:=1;
StringGrid1.ColCount:=4;
FormCreate(StringGrid1);
end;
procedure TForm2.Button4Click(Sender: TObject);
var lastRow1:Integer; summa1:Double;
begin
Form4.ShowModal;
if i1 <> 1 then
begin
StringGrid2.RowCount:=StringGrid2.RowCount+1;
lastRow1:=StringGrid2.RowCount-1;
//summa:=kol*price;
StringGrid2.Cells[0, lastRow1]:=Naim2;
//StringGrid2.Cells[1, lastRow1]:=FloatToStr(Price2);
StringGrid2.Cells[2, lastRow1]:=FloatToStr(Kol2);
//StringGrid2.Cells[3, lastRow]:=FloatToStr(summa);
end;
end;
procedure TForm2.Button1Click(Sender: TObject);
var
L: TStringList;
i: integer;
begin
L:= TStringList.Create;
L.LoadFromFile('text.txt');
StringGrid1.RowCount:=7;
StringGrid1.FixedCols:=1;
StringGrid1.FixedRows:=1;
for i:= 0 to L.Count - 1 do
begin
StringGrid1.Rows[i].Delimiter:= ',';
StringGrid1.Rows[i].DelimitedText:= L.Strings[i];
end;
L.Free;
end;
procedure TForm2.Button5Click(Sender: TObject);
var
i, LastRow: Integer;
SList: TStringList;
begin
SList:= TStringList.Create;
LastRow:= StringGrid2.RowCount - 1;
try
for i:= 0 to LastRow do
SList.Add(StringGrid2.Rows[i].CommaText);
SList.SaveToFile('zakaz.txt');
finally
SList.Free;
end;
ShowMessage('Сформирован заказ');
end;
end.
Листинг кода Add.pas
unit Add;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm3 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Button1: TButton;
Button2: TButton;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
Naim:string[25];
Price:Double;
Kol:Double;
i:Integer;
implementation
{$R *.dfm}
procedure TForm3.Button2Click(Sender: TObject);
begin
i:=1;
Form3.Close;
end;
procedure TForm3.Button1Click(Sender: TObject);
begin
i:=2;
if (Edit1.Text <> '') and (Edit2.Text <> '') and (Edit3.Text <> '') then
begin
Naim:=Edit1.Text;
Price:=StrToFloat(Edit2.Text);
Kol:=StrToFloat(Edit3.Text);
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
Form3.Close;
end
else
begin
ShowMessage('Пустые строки');
end;
end;
end.
Листинг кода Zakaz.pas
unit Zakaz;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm4 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Edit2: TEdit;
Edit3: TEdit;
Button1: TButton;
Button2: TButton;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
Naim2:string[25];
Kol2:Double;
i1:Integer;
implementation
{$R *.dfm}
procedure TForm4.Button2Click(Sender: TObject);
begin
i1:=1;
Form4.Close;
end;
procedure TForm4.Button1Click(Sender: TObject);
begin
i1:=2;
if(Edit2.Text <> '') and (Edit3.Text <> '') then
begin
Naim2:=Edit2.Text;
Kol2:=StrToFloat(Edit3.Text);
Edit2.Clear;
Edit3.Clear;
Form4.Close;
end
else
begin
ShowMessage('Пустые строки');
end;
end;
end.
Листинг кода Module.pas
unit Module;
//Модуль с общими данными
interface
type
//Запись полей
TShop = record
fNaim:string[100];
fPrice:Integer;
fKol:Integer;
fSumma:Integer;
fNaim1:string[100];
fPrice1:Integer;
fKol1:Integer;
fSumma1:Integer;
end;
const
//Константы
cNaim = 0; cPrice = 1; cKol = 2; cSumma = 3;
cNaim1 = 4; cPrice1 = 5; cKol1 = 6; cSumma1=7;
implementation
end.
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!