Skip to content
Open

Db #13

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 29 additions & 3 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,36 @@

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.10.0</version>
</dependency>

<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>5.4.0</version>
</dependency>

<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>7.8.0</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>6.1.4</version>
</dependency>

<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>8.3.0</version>
</dependency>


</dependencies>
</project>
29 changes: 29 additions & 0 deletions src/main/java/jdbc/ConnectionFactory.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package jdbc;

import java.io.FileInputStream;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;

public class ConnectionFactory {

public Connection getConnection() throws SQLException, ClassNotFoundException, IOException {
String rootPath = Thread.currentThread().getContextClassLoader().getResource("").getPath();
FileInputStream fileInputStream = new FileInputStream(rootPath + "credentials.property");
Properties prop = new Properties();
try {
prop.load(fileInputStream);
} finally {
fileInputStream.close();
}


Class.forName(prop.getProperty("driverClassName"));

return DriverManager.getConnection(
prop.getProperty("url"), prop.getProperty("username"), prop.getProperty("password"));

}
}
27 changes: 27 additions & 0 deletions src/main/java/web_driver/WebDriverFactory.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package web_driver;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.edge.EdgeDriver;
import org.openqa.selenium.edge.EdgeOptions;

public class WebDriverFactory {

public WebDriver getDriver(){
System.setProperty("webdriver.edge.driver", "src/main/resources/msedgedriver.exe");
return new EdgeDriver(edgeOptions());
}

public EdgeOptions edgeOptions(){
EdgeOptions edgeOptions = new EdgeOptions();

edgeOptions.setHeadless(true);
edgeOptions.addArguments("--disable-gpu");
edgeOptions.addArguments("--window-size=1920,1200");
edgeOptions.addArguments("--ignore-certificate-errors");
edgeOptions.addArguments("--silent");
edgeOptions.addArguments("--start-maximized");

return edgeOptions;
}

}
59 changes: 59 additions & 0 deletions src/test/java/dbtest/DbTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
package dbtest;

import jdbc.ConnectionFactory;
import org.checkerframework.checker.units.qual.C;
import org.springframework.jdbc.core.JdbcTemplate;
import org.testng.Assert;
import org.testng.annotations.*;

import java.io.IOException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class DbTest {

ConnectionFactory factory = new ConnectionFactory();

Connection connection;
Statement statement;

@BeforeSuite
public void getConnection() throws SQLException, ClassNotFoundException, IOException {
connection = factory.getConnection();
statement = connection.createStatement();
}

@AfterSuite
public void closeConnection() throws SQLException {
connection.close();
}

@Test
public void getUserFromDBTest() throws SQLException {
ResultSet resultSet = statement.executeQuery("SELECT * FROM mydb.user WHERE id = 1");
resultSet.next();
Assert.assertEquals(resultSet.getString(2), "yury");
}

@Test
public void updateUser() throws SQLException {
int result = statement.executeUpdate("UPDATE user set name='valera' WHERE id = 3");
Assert.assertEquals(result, 1);
}

@Test
public void createUser() throws SQLException {
statement.execute("INSERT INTO user (`name`, `surname`, `age`, `salary`) " +
"VALUES ('pasha', 'rock', '4', '9993')");
Assert.assertTrue(statement.execute("SELECT * FROM user WHERE name = 'pasha'"));
}

@Test
public void deleteUser() throws SQLException {
int result = statement.executeUpdate("DELETE FROM user WHERE name = 'pasha'");
Assert.assertEquals(result, 1);
}

}
22 changes: 22 additions & 0 deletions src/test/java/utils/BaseTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package utils;

import org.openqa.selenium.WebDriver;
import org.testng.annotations.AfterSuite;
import org.testng.annotations.BeforeMethod;
import web_driver.WebDriverFactory;

public class BaseTest {

protected static WebDriver driver;

@BeforeMethod
public void setUp(){
WebDriverFactory factory = new WebDriverFactory();
driver = factory.getDriver();
}

@AfterSuite
public void wrapUp(){
driver.quit();
}
}