#java
Mam pytanie. Posiadam taką klasę pomocniczą do testów:

@Component
public class SessionChecker {

private final DataSource dataSource;

public SessionChecker(DataSource dataSource) {
this.dataSource = dataSource;
}

public boolean checkExistence(String sessionId) {
try {
String query = "SELECT COUNT(*) FROM sessions WHERE session_id = ?";

try (Connection connection = dataSource.getConnection();
PreparedStatement statement = connection.prepareStatement(query)) {

statement.setString(1, sessionId);

ResultSet resultSet = statement.executeQuery();

return resultSet.next() && resultSet.getInt(1) > 0;
}
} catch (SQLException e) {
@Kamishimi: Jeżeli to jest klasa która będzie dostępna tylko w Twoim katalogu z testami, to pewnie może być. Jeżeli natomiast miałaby być dostępna w głównym kodzie no to tak średnio bo całkowicie tracisz type-safety w tym miejscu. W miejscu drugiego parametru można przekazywać wtedy dosłownie wszystko i kompilator się nie zająknie.

Zamiast tego na Twoim miejscu celowałbym w sygnaturę private boolean checkExistence(String query, PreparedStatement statement). Wtedy każda z publicznych metod
@Kamishimi: Może:

checkExistence(String query, Consumer<PreparedStatement> propertySetter) {
try (Connection connection = dataSource.getConnection();
PreparedStatement statement = connection.prepareStatement(query)) {
propertySetter.accept(statement);
ResultSet resultSet = statement.executeQuery();
return resultSet.next() && resultSet.getInt(1) > 0;
} catch (SQLException e) {
throw new RuntimeException("Error during checking existence: " + e.getMessage(), e);
}

public boolean userHasActiveSession(int userId) {
String query = "SELECT COUNT(*) FROM sessions WHERE user_id = ?";
return checkExistence(query, st -> st.setInt(1, userId));
}

public boolean sessionExist(String sessionId)
#programowanie #pracait #java
Mam w #!$%@? dziwny problem z testami jednostkowymi w groovy, odpalam jakikolwiek test i wywala mi atki blad. Robilem juz wszystko, cache, update ide do najnowszych, grzebalem w configu project structure tez wydaje sie byc okej. Ma ktos jakis pomysl co to moze byc? Dodawałem do poma rozne zaleznosci i bez zmian. Na masterze czy devie jest to samo, no ręce rozkladam juz po prostu (
staley - #programowanie #pracait #java
Mam w #!$%@? dziwny problem z testami jednostk...

źródło: Zrzut ekranu 2024-03-28 142919

Pobierz
  • 1
@AnonimoweLwiatko:
Ja w tamtym roku do jednej z kontraktornii na Java Developera 5 lat expa miałem to zadanie

https://leetcode.com/problems/remove-nth-node-from-end-of-list/?envType=featured-list&envId=top-interview-questions?envType=featured-list&envId=top-interview-questions

Na czas do zrobienia przez platformę, zrobiłem ale odmówiłem potem dalej rekrutacji bo okazało się że trzeba do 22 pracować bo Amerykańska zmiana
Wyceniłem taska na 5SP, będę robić coś w nowym repozytorium, migracja jednej usługi SOAP na RESTa gdzie będzie to zaciągane z dwóch innych mikroserwisów. Planuje jeszcze cache zrobić. No i dzisiaj zacząłem w tym grzebać no i myślę że bez darmowych nadgodzin powininen w piątek zrobić Pull Request pod koniec dnia. Przed chwilą do mnie Product Owner po Administracji pisze prywatnie czy zdążę się jednak wyrobić do czwartku. To normalne zachowanie w
✨️ Obserwuj #mirkoanonim
Co trzeba umieć, żeby dostać się na staż z javy, albo chociaż DARMOWE praktyki w jakimś januszexie? Muszę odbyć praktyki na studiach, a obecna sytuacja na rynku jest przynajmniej godna pożałowania. W ciągu ostatniego miesiąca chodziłem na targi pracy i ofert było tyle co kot napłakał, zostawiłem CV o ile w ogóle na to pozwalali, oczywiście zero odzewu. Mam świadomość, że projekty w moim portfolio nie są najlepsze na
Prawilnie przypominam że w 2017 roku zacząłem pracę jako Junior Java Developer (nie staż, czy praktyki) dla jednej z niemieckich korporacji.

Umiałem tylko wtedy podstawy Javy których się nauczyłem w ciągu jednego semestru. Ze Springiem nie miałem żadnej styczności, tak samo z JUnit. Umiałem tylko same suche studenckie podstawy OOP z Javy oraz SQLa. Reszty uczono mnie w pracy. Nie wiedziałem nawet wtedy co to presja w Sprintach w Scrumie.

Teraz przenieśmy
Jestem sam w zespole jako Backend Developer (Java). Ogólnie w skład mojego zespołu wchodzą

- 1x Analityk (na stałe)
- 2x Front End Developer (na stałe)
- 1x Scrum Master (rotujący między zespołami)
- 1x Product Owner (na stałe)
- 1x Product Owner (rotujący między zespołami)
- 1x Tester Manualny (na stałe)

Czy to normalne być samemu jako Backend Java Developer w tak skomponowanym zespole?

#java #pracait #korposwiat #programowanie #programista15k

Odpowiedz

  • To normalne 30.8% (52)
  • To nienormalne 36.7% (62)
  • Nie mam zdania 8.3% (14)
  • Uciekaj z tego Januszexu 24.3% (41)

Oddanych głosów: 169

Dlaczego przy teście serwisu leci LazyInizializationException a przy teście kontrolera już nie i przechodzi normalnie mimo, że też korzysta z tego serwisu?

@test
void testService() {
var film = filmRepository.save(createFilm());
var hall = hallRepository.save(createHall());
screeningRepository.save(createScreening(film, hall));

screeningService.getAllScreenings();
}

@test
void testController() {
var film = filmRepository.save(createFilm());
var hall = hallRepository.save(createHall());
screeningRepository.save(createScreening(film, hall));

webTestClient
.get()
.uri("/public/screenings")
.exchange()
.expectStatus()
.isOk();
}

#java #programowanie #naukaprogramowania #programista15k
strzelam, że tutaj dlatego że tworzysz te obiekty na potrzebę testu a tam ich może nie być ale w sumie nie wiem bo widzę tylko wycinek kodu


@Smonk_Da_Wead: Mam dwie refleksje. Naprawdę używacie chat gpt żeby rozwiązywać takie problemy? Przecież ich rozwiązywane to najlepsza droga aby się rozwijać i zrozumieć jak działa stack technologiczny w którym pracujemy. Znalezienie przyczyny tego problemu da więcej wiedzy niż przeczytanie niejednej książki. W drugiej kwestii
Ile lat doświadczenia zawodowego miałeś gdy spotkałeś się pierwszy raz z próbami wywierania presji w Sprintach w Scrumie?

#java #pracait #korposwiat #programowanie #programista15k #studbaza

Odpowiedz

  • 0-1 lat 36.9% (52)
  • 1-2 lat 5.0% (7)
  • 2-3 lat 5.7% (8)
  • 3-4 lat 2.8% (4)
  • 4-5 lat 2.1% (3)
  • 5-6 lat 0.7% (1)
  • 6-7 lat 0% (0)
  • 7 i więcej lat 3.5% (5)
  • Nie spotkałem się nigdy z próbą wywierania presji 43.3% (61)

Oddanych głosów: 141

Mam w aktualnej pracy IT mobbing (dawanie nierealnych do zrealizowania zadań w danym okresie czasowym, przytłaczanie obowiązkami, brak wsparcia innych ludzi, jestem w zespole sam programistą).

W poprzedniej pracy byłem 2.5 roku. Teraz mija mi 7 miesiąc pracy, zacząłem we wrześniu. W lipcu bym złożył wypowiedzenie z miesięcznym okresem wypowiedzenia.

Czy taka zmiana po roku wpływa na to jak będę odbierany? Co mówić na rozmowach? Miał ktoś podobną sytuację?

#pracait #korposwiat #
Pracuje ostatnio z takimi półgłowkami w #java
Trochę po nich sprzątałem i robiłem refaktor. Wydzielilem z repozytorium interfejs, żeby go używali i dało się to testować.
I taki jeden miał zrobić implementacje InMemory na potrzeby testów.
I co zrobił? Zamiast zaimplementować nowy interfejs, to podklasowal istniejąca implementacje i nazwał ją InMemory. Napisał wszystkie metody. Do konstruktora powkladal nulle w testach i Elo. Testy przechodzą.

#programista15k #programowanie
@Goddy: a jaki był problem z testowaniem na docelowym repozytorium, że musicie tak rzeźbić? W ten sposób jak będziecie mieć buga w obsłudze repozytorium lub integracji z nim to wam się testy nie zaświecą na czerwono.